Integrated System And Method For Managing Electronic Coupons

ABSTRACT

A networked electronic coupon management system is disclosed for managing electronic coupons. The system includes tightly integrated database, application server, and client components facilitating performing electronic coupon definition, issuance, and redemption operations. The operations include creating electronic coupons, wherein each electronic coupon includes a unique coupon ID, creating customer accounts, wherein each customer account comprises a unique customer ID; creating manufacturer accounts, wherein each manufacturer account comprises a Unique ID; and creating retailer accounts, wherein each retailer account comprises a unique retailer ID; and assigning a unique electronic coupon ID to a unique customer ID. Thereafter the system validates the electronic coupon with a product purchase transaction by a customer associated with the unique customer ID. Furthermore, fluids transfers associated with the product purchase transaction are tracked, and historical transactional level data is maintained for all customer, manufacturer and retailer accounts.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a continuation of and claims priority to U.S.patent application Ser. No. 14/982/473, filed Dec. 29, 2015 and entitled“Integrated System And Method For Managing Electronic Coupons,” which isa continuation of and claims priority to U.S. patent application Ser.No. 14/729,040, filed Jun. 2, 2015 and entitled “Integrated System AndMethod For Managing Electronic Coupons,” which is a continuation of andclaims priority to U.S. patent application Ser. No. 11/855,143, filedSep. 13, 2007 and entitled “Integrated System And Method For ManagingElectronic Coupons,” which claims priority of Novick et al. U.S.Provisional Application Ser. No. 60/825,549 filed on Sep. 13, 2006,entitled “Dynamic Lifetime Management of Electronic Coupons,” andBrinkley et al. U.S. Provisional Application Ser. No. 60/911,749 filedon Apr. 13, 2007, entitled “Point of Sale Interfaces for ElectronicCoupon Systems.” The entire contents of the above-identifiedapplications are hereby fully incorporated herein by reference.

AREA OF THE INVENTION

The present invention generally relates to the area of networkedmarketing systems capable of providing access to databases comprising avariety of information relating to electronic coupons that are redeemed,for example, during electronically registered customer purchases atretail outlets.

BACKGROUND

Marketers in the top 14 consumer categories spend $300 Billion annuallyto reach consumers through promotion ($228BN) and advertising ($97BN).The inefficiency of the paper-based process results in ahigher-than-necessary cost per redemption for marketers and causes manycoupon users, frustrated by the time and effort required, to simply giveup. Today, shoppers must sort through the hundreds of paper coupons theyreceive in newspapers, magazines and the mail, cut out the coupons thatare of interest, store them, remember to take them to the grocery store,and finally redeem them by handing the paper coupons to a cashier atcheckout. The billions of paper coupons ultimately redeemed are handledby up to 8 pairs of hands before they are finally routed back through aclearinghouse to the manufacturer. 76% of the United States populationuses coupons from Sunday newspaper inserts, retailers' fliers,magazines, in/on packages and online coupons, each year. (84% of femalesand 68% of males use coupons). In 2005, 323 billion paper coupons weredistributed however less than 1% was redeemed. Despite the problemsassociated with paper coupons marketers continue use them becausecoupons are an effective promotional tool with very predictable costsand results and no proven paperless replacement

SUMMARY OF THE INVENTION

The present invention comprises a networked system (and related methods)for managing electronic coupons. The system includes tightly integrateddatabase, application server, and client components facilitatingperforming electronic coupon definition, issuance, and redemptionoperations. The operations include creating electronic coupons, whereineach electronic coupon includes a unique coupon ID, creating customeraccounts, wherein each customer account comprises a unique customer ID;creating manufacturer accounts, wherein each manufacturer accountcomprises a Unique ID; and creating retailer accounts, wherein eachretailer account comprises a unique retailer ID; and assigning a uniqueelectronic coupon ID to a unique customer ID. Thereafter the systemvalidates the electronic coupon with a product purchase transaction by acustomer associated with the unique customer ID. Furthermore, fundstransfers associated with the product purchase transaction are tracked,and historical transactional level data is maintained for all customer,manufacturer and retailer accounts.

BRIEF DESCRIPTION OF THE DRAWINGS

While the claims set forth the features of the present invention withparticularity, the invention together with its objects and advantages,may be best understood from the following detailed description taken inconjunction with the accompanying drawing of which:

FIG. 1 is a schematic drawing depicting a system embodying the presentinvention in the form of multiple computer systems coupled to acentralized electronic coupon management system;

FIGS. 2 and 3 are schematic drawings depicting the relationships betweenvarious objects of an exemplary electronic coupon system;

FIGS. 4a-4v summarize fields of an exemplary set of tables centrallymaintained by database servers to support a set of events associatedwith lifetime management of electronic coupons;

FIGS. 5a-e identify a sets of events that drive the operation of thedisclosed electronic coupon system;

FIG. 6 depicts an exemplary user interface for presenting Ad Campaignsvia the electronic coupon system's internally managed site

FIG. 7 depicts an exemplary user interface for presenting in-storeelectronic coupons;

FIG. 8 depicts an exemplary user interface for presenting coupon summaryinformation on a store-by-store basis;

FIG. 9 depicts an exemplary user interface for presenting electroniccoupon redemption information for a particular store;

FIG. 10 identifies a set of states and transitions for an Ad Campaign;

FIG. 11 identifies a set of states and transitions for an electroniccoupon;

FIG. 12 is a flowchart summarizing a set of steps for the generaloperation of the system;

FIG. 13 is a flowchart summarizing a set of steps for addressing couponredemption fraud;

FIG. 14 is an exemplary user interface for presenting statistical andbudget information for an Ad Campaign;

FIG. 15 is an exemplary user interface for presenting aggregate couponredemption statistics on a store-by-store basis;

FIG. 16 is a flowchart summarizing a set of steps for managing AdCampaign budgets;

FIG. 17 is an exemplary user interface for editing an Ad Campaign;

FIG. 18 is a flow chart summarizing a set of steps for monitoring andcontrolling budgets in near-real time:

FIG. 19 is an exemplary user interface for monitoring ad campaigns on adepartmental basis;

FIG. 20 is a flowchart summarizing a set of steps associated withcarrying out a focused Ad Campaign; and

FIG. 21 is an exemplary user interface for displaying Ad Campaignresults by ZIP code.

DETAILED DESCRIPTION OF THE DRAWINGS

The exemplary electronic coupon management system comprises anintegrated set of tables/databases and coupon processing modules forcarrying out a subscriber-based electronic coupon issuance andredemption services providing a high degree of both control andtraceability of electronic marketing, coupon transactions including:requesting, creating, distributing, managing, reporting on, redeeming,settling, archiving, and the payment and accounting. The electroniccoupon system is highly scalable to potentially handle very highthroughput and maintain a traceable and auditable history for all of theabove-identified transactions in a network comprising both wide area(e.g., the Internet) and local area networks (local in-store POSnetworks). The system also comprises report generation mechanismscapable of querying relational databases comprising detailed records ofthe above-mentioned transactions and rendering a variety of customizablereports and marketing actions.

Unlike known electronic coupon management systems, the system disclosedherein enables providers (e.g., manufacturers) to create value, uponrequest by a consumer, in the form of a traceable electronic coupon, andassociate (deposit) the electronic coupon with the consumer's accountwhich is maintained at a centralized data center. Thereafter, theconsumer is capable of redeeming the traceable electronic coupon at anyretailer having access to the user's coupon account maintained at thecentralized data center. Furthermore the system tracks the life of thetraceable electronic coupon to acquire and maintain detailed informationrelating to the electronic coupon including: recording informationregarding a purchase with which the electronic coupon is associated,verifying the authenticity of the transaction, and accounting for fundstransfers (from the Manufacture to the Retailer) associated with theuse/redemption of the electronic coupon.

With regard to the traceability of the electronic coupon, a unique ID isassigned to each issued electronic coupon. The unique ID supports a highdegree of traceability to prevent fraud and improve compliance with theGenerally Accepted Accounting Principles by tracking all transactionsassociated with each issued electronic coupon. Furthermore, the systemissues at least one unique identification number for each Consumer,Manufacture, Retailer, and Retail Point of Sale (POS) System associatedwith, or linked to, the electronic coupon system.

Turning to FIG. 1, the electronic coupon system described herein issupported by a highly available (minimal wait), high performance,n-tiered client/server application environment. Server-side systemcomponents feature performance load balancing and fail over capability.The servers are monitored to maintain a high level of transactional andreporting integrity.

The system, in an exemplary embodiment, comprises three clientapplication types—Consumers 100, Manufactures 102, and Retailers104—that access the electronic coupon system services, supported by theabove-mentioned servers, via the Internet using a standard Internetbrowser. Yet another type of client application, referred to herein asRetail Point of Sales (POS) System applications 106, accesses theelectronic coupon system server via the Internet through a VirtualPrivate Network (VPN) tunnel. The Retail POS applications 106incorporate a task-specific interface described further herein below.

The application servers 110 a-d process requests from each of the fourabove-identified types of clients (i.e., Consumer, Manufacturer,Retailer and Retail POS). The application servers analyze each incomingrequest, and rout the request to an appropriate type of applicationserver. Each application server cluster is scalable to handlepotentially millions of simultaneously pending requests. Each of theapplication servers 110, in turn, submits database transaction requests(to retrieve or write data) to a high performance database server 120which supports all of the Application Servers. The database server 120is, by way of example, a high performance, highly available databaseserver cluster that, with a mirrored data file disk array.

In an exemplary embodiment each of the major system components (network,software applications, and computer processors) are externally monitoredto perform error handling and error recovery when required for any ofthe client or server applications mentioned herein above with referenceto FIG. 1.

The system supports generating electronic coupon offers in a variety ofways. The system supports creating a coupon, under direction from aManufacture (account), via Manufacturer client application 102, foroffer to a set of Consumers (consumer accounts) that are registered withthe electronic coupon system. The use of capitalization in Consumer,Manufacture, and Retailer is intended to identify “accounts” of theparticular types. Once issued, the electronic coupons are redeemablethrough any of the retail POS outlets of Retailers (accounts) that areconfigured to participate in the electronic coupon system. Additionally,the electronic coupon system supports creating a coupon under directionfrom a Manufacturer, for any particular Consumer that participates inelectronic coupon service. Once issued, the electronic coupons areredeemable by the particular identified. Consumer (and only thatConsumer) at any retail POS outlet of a Retailer that participates inthe electronic c upon system.

With regard to auditing/monitoring/reviewing coupon redemptions, theelectronic coupon system supports reviewing, through the Manufacturerclient applications 102, a list of electronic coupons created by theManufacturer and information about the Consumers that have acquired theparticular electronic coupons. Also, the electronic coupon systemsupports reviewing, through the Manufacturer applications 102, a list ofelectronic coupons that have been redeemed and information about theRetailers through which the corresponding manufacturer's electroniccoupon instances have been redeemed.

With regard to the Consumer applications 100, the system supportsdesignating coupons, issued via several differing Manufacturers, by asingle Consumer via one of the Consumer applications 100. A userassociated with the consumer account to which the electronic couponsissued subsequently redeems the electronic coupons through anyregistered/participating Retailer via one of the Retailer POSapplications 106. The electronic coupon system supports reviewing, bythe consumer applications 100, their associated list of previouslyissued electronic coupons and associated information (e.g., total value,expiration dates, etc.). Any registered consumer, through acorresponding one of the Consumer applications 100 can review their ownlist of previously issued/unexpired electronic coupons and informationabout a Manufacturer through which the particular electronic couponsissued. The electronic coupon system enables users, through the consumerapplications 100, to review the list of redeemed electronic coupons fora Consumer and information about a Retailer through which particularcoupons were redeemed. Any Consumer can “opt-in” to a number of types ofelectronic coupon offered by Manufacturers via their correspondingmanufacturer applications 102 that participate in the electronic couponservice supported by the exemplary system.

With regard to the retailer applications 104 through which Retaileroperate, the electronic coupon system supports redemption of previouslyissued electronic coupons via the Retailer POS applications 106.Furthermore, the electronic coupon system supports reviewing, via theRetailer applications 104, records maintained by the database server 120corresponding to electronic coupons redeemed through identified retailerPOS applications 106 (associated with a particular Retailer). Thus, aretailer is able to review records, associated with a correspondingRetailer account, containing information relating to the electroniccoupons that have been redeemed by Consumers via the Retailer's POSmachines. The system supports coupon redemption records containing awide variety of information that, in turn, facilitate supporting a widevariety of electronic coupon database queries that can designate/arrangeresponsive coupon information according to Manufacturer, Consumer,product, etc.

Having described an exemplary system arrangement from the point of viewof an exemplary set of interacting client/server applications and anassociated database, attention is now directed to FIGS. 2 and 3 thatillustratively depict a partial set of fields associated with anexemplary electronic coupon object and its relationship to other systemdatabase objects including: a Consumer to whom the coupon has issued, aprovider (e.g., Manufacturer) of an associated product/service, aRetailer where the coupon was redeemed. The exemplary object includesfurther fields such as timestamps indicating issue date, expirationdate, redemption date, etc. FIG. 3 is indicates the presence of multipleelectronic coupon objects (in fact millions) that are contemplated toexist in the system at any point in time.

The electronic coupon system is based upon a highly referentialobject-oriented database that maintains several lists including:Consumers, Manufacturers, Retailers, and coupons. Each consumer accountobject is associated with a corresponding, personalized, list ofelectronic coupon objects. A Consumers list 200 comprises a set ofConsumer objects wherein each Consumer object includes, among otherthings, a set of references to coupon objects created (issued) to theparticular Consumer object in the Consumers list 200. A Manufacturerslist 210 comprises a set of Manufacturer account objects wherein eachManufacturer account object comprises a list of references to previouslyissued electronic coupon object instances. Alternatively, the list ofcoupon references is limited to redeemed coupon instances. A Retailerslist 220 comprises a set of Retailer account objects wherein eachRetailer account object comprises a list of coupons redeemed by one ofthe Retailer POS outlets associated with the Retailer.

An electronic coupon object 230 references (and is referenced by) anobject within each of the Consumers list 200, Manufacturers list 210 andRetailers list 220. Thus for each electronic coupon, the Consumerredeemer can be established. Furthermore the electronic coupon objectidentifies a manufacturer of the coupon's associated product. Finally,the electronic coupon object references/identifies a retailer thatredeemed the electronic coupon. The aforementioned combination of objectreferences enables subscribers of the system, regardless of point ofentry into the system (from Manufacturer, from Consumer, from Retailer,or from Coupons) to traverse all related information maintained by thedatabase server 120 about a particular electronic coupon.

Accessing the content of the electronic coupon objects maintained by thedatabase server 120 is described herein below with reference toparticular examples.

Consumer Example—a consumer, among other things, views all electroniccoupons issued to the Consumer, the Manufacturer of the product withwhich the electronic coupons are associated, and a Retailer thatredeemed the coupon (assuming the electronic coupon has been redeemed.Therefore a consumer traverses the list of electronic coupons issued tothe consumer's account, and through the references contained within theelectronic coupon the consumer determines the Manufacturer of therelated product and potentially a redeeming Retailer (assuming thecoupon was redeemed).

Manufacturer Example—a manufacture, among other things, views all of theelectronic coupon object instances with which the manufacturer's accountis associated, the Consumers that have the electronic coupons, and theRetailers that have redeemed the electronic coupons. Therefore an agentof the manufacturer traverses a list of electronic coupons associatedwith the Manufacturer and follows the references from those electroniccoupon object instances to consumer accounts that possess the couponsand the retailer accounts that redeemed the electronic coupons to obtainfurther information about the Consumers and or Retailers and takemarketing actions accordingly.

Retailer Example—a retailer, among other things, views all of theelectronic coupons the retailer redeemed, the Consumers that redeemedthe electronic coupons, and the Manufacturer associated with theelectronic coupons. Therefore an agent of a retailer traverses aretailer account's list of redeemed electronic coupons to determineinformation such as associated Manufacturers and Consumers that redeemedthem in order to obtain additional information about the Manufacturersand/or Consumers.

Database Structures Tables/Schema

Having described the general arrangement of an exemplary electroniccoupons system, attention is directed to a set of tables centrallymaintained by the database server 120 to support a set of eventsassociated with the lifetime management of electronic coupons describedherein below. The illustrative example is based upon a highlyreferential (relating a variety of entity types to an electronic coupon)object-oriented data model. The data elements and their associatedcross-references facilitate creating and/or tracing an auditable path ofeach redeemed electronic coupon through a series of states. Various datastructures support recreating the state of each electronic coupon at anypoint in time—not just its current status.

Turning to FIG. 4a , a set of fields associated with a Companies tablerecord 300 are listed. The data elements associated with the Companiestable record 300 support administering manufacturer and retailerprofiles and account definitions. In an exemplary embodiment, eachmanufacturer or retailer company is uniquely identified by a companyidentification integer value stored within a ‘companies_id’ field. A‘name’ field stores a string value specifying the name of a company. A‘coupon_code’ field holds an integer value uniquely identifying a codeappended to each coupon issued by a manufacturer or redeemed by aretailer. A ‘type’ field contains a string value identifying whether thecompany is a manufacturer or a retailer and a specific sub-category ofcompany to which a company belongs. A ‘created_at’ field stores a valuethat specifies a date and time at which a particular company accountrecord was created in the table, and an ‘updated_at’ field stores avalue that specifies a date and time when the account record was lastchanged. Additional fields contain integer values that facilitatecontacting an appropriate company contact via the mail. Such fieldsinclude: an ‘accounting_address_id’, a ‘department_id’, a region_id; anhq_address_id. A ‘billing_cycle’ specifies the frequency with which amanufacturer is billed in association with coupon campaigns.

Turning to FIG. 4b , a set of fields associated with a Categories tablerecord 310 are listed. The data elements associated with the Categoriestable record 310 facilitate categorizing coupon campaigns (also referredto herein as ad campaigns) by, for example, product types. A‘categories_id’ field stores an integer value uniquely identifying aparticular category. A ‘name’ field stores a string value specifying thename of a category. A ‘parent_id’ field stores an integer valuespecifying a parent category_id to support a hierarchical arrangement ofcategories and sub-categories. A ‘position’ field stores an integeridentifying the level within a category tree hierarchy.

Turning to FIG. 4c , a set of fields associated with a Users tablerecord 320 are listed. The data elements associated with. the Userstable record 320 facilitate management of authorized users and retailerswithin the electronic coupon system. In an exemplary embodiment, eachregistered user is uniquely identified by an integer value stored withina ‘users_id’ field. A ‘login’ field stores a string value thatconstitutes a user's logon name. An ‘email’ field stores a string valuespecifying a users email address. An ‘encrypted_password’ field stores astring corresponding to a user's encrypted password. The encryptedpassword is generated by taking the user's password (entered by them)and combining it with a random generated string (stored in the saltfield). This method guarantees a uniquely generated encryption methodfor generating the encrypted password. A ‘salt’ field stores a stringcontaining the aforementioned random values. A ‘created_at’ fieldcontains a value specifying the date and time that a particular userrecord was created, and an ‘updated_at’ field contains a valuespecifying when the user record was last updated. A ‘remember_token’field stores a string corresponding to the user's logon password forpurposes of automatically filling in the password field in a logondialog for gaining access to the system. A ‘remember_token_expires_at’field specifies a date and time at which a saved password expires. A‘first_name’ field and ‘last_name’ store string, values specifying auser's name.

Additional fields of a Users table record 320 facilitate storing,company information for retailer users of the system. A ‘company_id’field stores an integer identifying a retailer with which the user isassociated. A ‘department_id’ field, a ‘store_id’ field, and a‘region_id’ field store optional integers for specifying a particularlocation of a particular user within a company.

Turning to FIG. 4d , a set of fields associated with a Roles users tablerecord 330 are listed. The data elements associated with the Roles_userstable record 330 facilitate connecting ‘user_id’ values to particularuser roles. A ‘user_id’ stores an integer uniquely identifying a user. A‘role_id’ stores an integer corresponding to a particular role. Therecord 330 also includes a ‘created_at’ field and an ‘updated_at’ fieldspecifying corresponding date and time values.

Turning to FIG. 4e , a set of fields associated with a Roles tablerecord 340 are listed. The data elements of the Roles table record 340facilitate defining a uniquely identified role. A ‘roles_id’ fieldstores an integer uniquely identifying a role. A ‘name’ field stores astring identifying a role by name. An ‘authorizable_type’ field stores astring identifying the capability associated with the users role. Forexample a manager can perform many types of action. A ‘created_at’ fieldand an ‘updated_at’ field specify corresponding date and time values. A‘display_name’ stores a string listing a display name for a role.

Turning to FIG. 4f , a set of fields associated with a Departments tablerecord 350 are listed. The data elements of the Departments table recordfacilitate describing a department of a company within the electroniccoupon system. A ‘departments_id’ field stores an integer value uniquelyidentifying a department within a particular company. A ‘name’ fieldstores a string value a chosen name for the department. A ‘parent_id’field stores an integer value identifying a parent department. This isbecause each department can be a sub-department of a parent department.For Example the Paper Department can have two sub-departments, one forPaper Towels, the other for Toilet Paper, however both belong to (theirparent department is) the paper department. A ‘description’ field storesa string value briefly describing a department to aid itsidentification, for example, when presented in a list of departments ina list box of a manufacturer user interface. A ‘budget’ field stores adecimal value indicating a potential cap for the value of all coupons.

Turning to FIG. 4g , a set of fields associated with a Regions tablerecord 360 are listed. The data elements of the Regions table recordfacilitate describing a geographic region for a company that isassociated with multiple regions. A ‘regions_id’ field stores an integeruniquely⁻ identifying a region with regard to a particular company. A‘name’ field stores a string value for a chosen name for the region. A‘parent_id’ field stores an integer value identifying a parent region.This is because each region can be a sub-region of a parent region. ForExample Texas (a region) can have four sub-regions North, East, South,and West. And each of the four sub-region has a parent region (i.e.,Texas). A ‘description’ field stores a string value briefly describing aregion to aid its identification, for example, when presented in a listof regions in a list box of a manufacturer user interface.

Turning to FIG. 4b , a set of fields associated with a Stores tablerecord 370 are listed. The data elements of the Stores table recordfacilitate describing a store for a company having multiple stores. A‘stores_id’ field contains an integer value uniquely identifying a storewith regard to a company that has many stores. A ‘name’ field stores astring value for a chosen store name. A ‘region_id’ field stores aninteger value identifying a region (see regions_id field of FIG. 4g )within which the store is located. A ‘retailer_id’ stores a a uniqueinteger value identifying a particular retailer record (i.e., a Store)in a Users table (see FIG. 4c above) with which the store is associated.A ‘disabled_at’ field stores a date and time at which a particular storeis excluded from use of the electronic coupons system, and a‘disabled_by’ field stores an integer identifying the administrator userthat initiated the exclusion. A ‘ref_id’ field stores a string valuethat the retailer currently uses to identify the store location.

Turning to FIG. 4i , a set of fields associated with a Point of Salestable record 380 are listed. The data elements of the Point of Salestable record 380 facilitate describing a particular point of saledevice/unit. A ‘point_of_sales_is’ stores an integer value uniquelyidentifying the POS unit in a retailer store entity. A ‘name’ fieldstores a string value for a chosen POS unit name. A ‘store_id’ fieldcontains an integer value linking the POS unit to a store record (see,FIG. 4h ). A ‘disabled_ar field stores a date and time at which aparticular POS unit is excluded from use of the electronic couponssystem, and a ‘disabled_by’ field stores an integer identifying theadministrator user that initiated the exclusion. A ‘ref_id’ field storesa string value that the retailer currently uses to identify the POSsystem within the Store.

A set of records are now described that support managing bymanufacturing companies of product groups and product images. Turning toFIG. 4j , a set of fields associated with a Product Groups table record390 are listed. The data elements of the Product Groups table recordfacilitate defining a product group within the electronic coupon system.A ‘product_group_id’ stores an integer value uniquely identifying theproduct group within a manufacturing company. A ‘name’ field stores astring value for a chosen product group name. A ‘company_id’ fieldstores an integer identifying a company record (see, FIG. 4a ) in orderto facilitate linking the Product Group table record 390 for aparticular product group to a particular Company record. A ‘description’field stores a string value providing a description of the product groupto aid its identification to a user. A ‘default_image_id’ field storesan integer value linking the product group record to a default image. A‘ref_id’ field stores a string value that the retailer currently uses toidentify the product group. This number is typically a 3 digit number.

Turning to FIG. 4k , a set of fields associated with aProduct_UPC_groupings table record 400 are listed. The data elements ofthe Product_UPC_groupings table record 400 facilitate connecting UPCrecords (see, FIG. 4l ) to corresponding product group records (see,FIG. 4j ). Each record includes a ‘product_group_id’ field for storingan integer value identifying a product group record, and a ‘upc_id’field for storing an integer value identifying a UPC record.

Turning to FIG. 4 l, a set of fields associated with a UPCs table record410 are listed. The data elements of the UPCs table record 410facilitate globally defining a product identified by its UPC. A ‘upc_id’field stores an integer value corresponding to a product's UPC. A ‘name’field stores a string value for a chosen product name. A ‘check_digit’field stores an integer value that is used as the UPC check digit. EachUPC code has a check digit that computers use in order to verify theaccurate transition of the other numbers. A ‘company_id’ field stores aninteger corresponding to the unique identifier for a company recordstored in the company record table (see, FIG. 4a ). A ‘code’ fieldstores a string value.

Turning to FIG. 4m , a set of fields associated with an Image_productmappings table record 420 are listed. The data elements of theImage_product_mappings table record 420 facilitate connectingProduct_image records (see, FIG. 4n ) to Product_group records (see,FIG. 4j ). A ‘product_group_id’ field stores an integer valueidentifying a particular record in the Product_group table, and a‘product_image_id’ field stores an integer value identifying aparticular record in a Product_image table.

Turning to FIG. 4n , a set of fields associated with a Product_imagestable record 430 are listed. The data elements of the Product_imagestable record 430 facilitate defining a product image for use with anelectronic coupon (advertisement). A ‘product_image_id’ field stores aninteger value uniquely identifying a product image within a particularidentified manufacturer company. A ‘parent_id’ field stores an integervalue. A ‘company_id’ field stores an integer identifying acorresponding company record (see, FIG. 4a ) in a Companies table. A‘name’ field gores a string value identifying the associated productimage by name. A ‘filename’ field stores a string value specifying aname of a file containing the product image data. ‘content_type’ fieldstores a string value that indicates the type of content stored in thissection (e.g., jpeg, tiff, etc). A ‘size’ field stores a string valuespecifying the size (in bytes) of the image to be stored. A ‘width’field and a ‘height’ field store a string value defining the dimensionsof the image.

A set of records are now described that support managing ad (electroniccoupon) campaign distribution. Turning to FIG. 4o , a set of fieldsassociated with a Campaign areas table record 440 are listed. The dataelements of the Campaign areas table record facilitate defining acampaign area. The campaign area definition is thereafter used withinthe electronic coupon system to specify all of the zip codes (areas)where the campaign can be distributed. If a consumer resides in thecampaign distribution area, then the consumer can access the campaign. A‘campaign_area_id’ field stores an integer value uniquely identifying acampaign area within the scope of a particular manufacturing company. A‘name’ field stores a string value identifying the campaign area byname. A “description” field stores a string value providing adescription of the particular campaign area for presentation in a couponmanagement user interface. A ‘company_id’ stores an integer value thatidentifies a corresponding company record within the Companies table(see, FIG. 4a ).

Turning to FIG. 4p , a set of fields associated with aCampaign_area_mappings table record 450 are listed. The data elements ofthe Campaign_area_mappings table record 450 facilitate linking postalcodes (see, FIG. 4q ) to campaign areas (see, FIG. 4o ). A‘campaign_area_id’ field stores an integer value identifying a record inthe Campaign areas table containing records of the type described abovewith reference to FIG. 4o . A ‘postal_code_id’ field stores an integervalue identifying a record in the Postal codes table containing recordsof the type described below with reference to FIG. 4 q.

Turning to FIG. 4q , a set of fields associated with a Postal_codestable record 460 are listed. The data elements of the Postal_codes tablerecord 460 facilitate associating zip codes with name strings andthereafter referencing the records by a system-wide uniqueidentification assigned to the combined zip code and descriptive name. A‘postal_codes_id’ field stores an integer value uniquely identifying thepostal code descriptor record throughout the system. A ‘name’ fieldstores a string value identifying the postal code by name, and a‘zip_code’ field stores a string value corresponding to the numericalzip code (e.g., a 5 digit string).

A set of records are now described that support management of issuedcoupons in the context of an ad (e-coupon) campaign. In general, eachelectronic coupon record, co1Tesponding to an electronic couponinstance, references an Ad campaign record from which the electroniccoupon issued. Turning to FIG. 4r , a set of fields associated with anAd campaign table record 470 are listed. The data elements of the Adcampaign table record 470 facilitate defining an electronic couponcampaign for a particular manufacturer from which electronic couponsissue. An ‘ad_campaign_id’ field stores an integer value uniquelyidentifying the electronic coupon campaign within the scope of anidentified manufacturer. A ‘company_id’ field stores an integer valueidentifying a company record (see, FIG. 4a ) of a manufacturer withwhich the identified campaign is associated. A ‘name’ field stores astring value identifying the coupon campaign by name. A‘campaign_start_date’ field and a ‘campaign_end_date’ field store valuesidentifying the date and time for the beginning and end of an electroniccoupon campaign. A ‘created_at’ field stores a date and time identifyingwhen a coupon campaign record was initially created, and an ‘updated_at’field stores a date and time when a coupon campaign record was lastupdated. A ‘category_id’ field stores an integer value identifying anassociated category record within a Categories table (see, FIG. 4b ). A‘display_text’ field stores a string value containing descriptive textfor the ad campaign. A ‘web_activation_date’ field and a‘web_inactivation_date’ field store values identifying the start timeand end time for a period wherein the electronic coupon offer will bepresented to consumers over the Internet.

With continued reference to FIG. 4r , a ‘coupon_value_id’ field storesan integer value referencing a record in a Coupon values table (see,FIG. 4t ) describing the electronic coupon's face value. A‘campaign_area id’ field stores an integer value referencing a record ina Campaign area table (see, FIG. 4o ). A ‘product_group_id’ field storesan integer value referencing a record in a Product group table (see.FIG. 4j ) that identifies a set of applicable products of a manufacturerfor the campaign. A ‘forced web_inactive’ field stores a date and timethat an Internet-based electronic coupon offer is rendered inactive. A‘forced_web_inactive_by’ field stores an integer value identifying anentity that rendered the electronic coupon offer inactive. An‘assumed_redemption_value’ field stores a decimal value specifying aredemption value for the coupon. An ‘approved_id’ field stores aninteger value referencing a record in a Users table (see, FIG. 4c )corresponding to the user that approved submission of the electroniccoupon. An ‘approved_at’ field stores a date and time at which theelectronic coupon was approved by the identified user. A ‘department_id’stores an integer value referencing a record in a Departments table(see, FIG. 4f ). A ‘budget’ field stores a decimal value establishing adesired limit on the total value of redeemed electronic coupons. A‘product_image_id’ field stores an integer value referencing a record ina Product images table (see, FIG. 4n ). A ‘creator_id’ field stores aninteger value referencing a record in a Users table (see, FIG. 4c )corresponding to a creator of an electronic coupon campaign record.

Turning, to FIG. 4s , a set of fields associated with a Coupons tablerecord 480 are listed. The data elements of the Coupons table record 480facilitate defining an electronic coupon instance assigned to aspecified user account. A ‘coupons_id’ field stores an integer valueuniquely identifying a coupon issued according to a particular adcampaign. A ‘consumer_id’ field stores an integer value referencing arecord in a Users table (see, FIG. 4c ) identifying the consumer accountto which the electronic coupon issued. A ‘retailer_id’ field stores aninteger value referencing a record in a Users table (see, FIG. 4c ) fora retailer user of the system corresponding to a retailer where theelectronic coupon was redeemed. A ‘serialnumber’ field stores a stringvalue. A ‘redeemed_date’ field stores a data and time that the couponwas redeemed at the identified retailer. A ‘purchasedproduct’ fieldstores a string value identifying the product to which the electroniccoupon was applied. A ‘created_at’ field stores a value indicating adate and time at which the electronic coupon issued to the identifiedconsumer/user. An ‘updated_at’ field stores a data and time that acoupon was updated to indicate redemption of the coupon in associationwith the purchase of the identified purchased product. An‘ad_campaign_id’ field stores an integer value that references a recordin the Ad Campaign table (see, FIG. 4r ) corresponding to the campaignwithin which the electronic coupon was issued. An ‘invoice_id’ fieldstores an integer value reference a record in an Invoices table (see,FIG. 4v ) representing a billing to the manufacturer for payment of thecoupon's redeemed value. A ‘state’ field stores an integer valuecorresponding to a state where the electronic coupon was redeemed. A‘point_of_sale_id’ field stores an integer value corresponding to arecord in a Point of sales table (see, FIG. 4i ) indicating theparticular check out location where an electronic coupon was redeemed. A‘redemption_value’ field stores a decimal value indicating the redeemedvalue of the coupon (for instances where a single coupon has differentredemption value based upon the number of products purchased).

Turning to FIG. 4 t, a set of fields associated with a Coupon valuestable record 490 are listed. The data elements of the Coupon valuestable record 490 define a coupon face value. A ‘face_value’ field storesa string value indicating a monetary value for an associated coupon. A‘code’ field stores a string value that can be used in place of thevalue. Some codes represent the phrase buy one get one free, which hasnot true “face value”.

Turning to FIG. 4u , a set of fields associated with a Consumers tablerecord 500 are listed. The data elements of the Consumers table record500 store demographic and contact information associated with individualconsumer accounts. A ‘consumers id’ field stores and integer valuereferencing a record in the Users table (see. FIG. 4c ). A ‘first_name’field and a ‘last_name’ field store string values that, in combination,comprise the uses name. An ‘address’ field and ‘address2’ field storestring values comprising a user's mailing street address. The remainingportions of a user's mailing address are stored in a ‘city’ field,‘state’ field, ‘zip_code’ field, and ‘country’ field. Otheruser-defining string value fields of a Consumers table record 500include: a ‘gender’ field, a ‘birthday’ field, and an ‘email’ field.Similar to previously described records, consumer records also include a‘created_at’ field and an ‘updated_at’ field that store date and timevalues indicating when the consumer record was initially created and alast time it was updated. A ‘login’ field specifies a login name stringvalue, and a ‘password’ field specifies a password string.

Turning to FIG. 4v , a set of fields associated with an Invoices tablerecord 510 are listed. The data elements of the invoices table record510 facilitate electronic invoicing manufacturer clients in associationwith coupon redemptions. An ‘invoices_id’ field stores an integer valueuniquely identifying the electronic invoice system-wide. An ‘amount’field stores a decimal value indicating the amount due. An invoiced_date' specifies a date on which the invoice issued to a manufacturercompany. An ‘invoiced_by’ field contains an integer value that representthe retailer that “creates” the invoice. A ‘paid_date’ field stores adate on which the invoice was paid. A ‘paid_by’ field stores an integerreferencing a record of a manufacturer in the Companies table (see, FIG.4a ) that paid the invoice. A ‘posted_date’ field stores a date whenpayment was posted (initiated). A ‘posted_by’ field stores an integervalue referencing a record in the Users table (see, FIG. 4c )corresponding to the user that initiated posting the payment. A ‘state’field stores an integer value identifying the state from which thepayment was made. A ‘payment_method’ field stores a string valueidentifying a payment mode (e.g., bank debit, line of credit account,etc.). A ‘payment_confirmation’ field stores a string value comprising aconfirmation code. A ‘payer_id’ field stores an integer valuereferencing a record in the Company Table 300(user/manufacturer/company)] table corresponding to the entity that paidthe invoice. A ‘payee_id’ field stores an integer value referencing arecord in the companies table (see, FIG. 4a ) corresponding to therecipient of the payment. A ‘coupon_count’ field stores an integer valueidentifying how many coupons were redeemed. A ‘peer_invoice_id’ fieldstores an integer value referencing another invoice record in the sametable where the payee_id is SMC and the Payer_id is the same as thisinvoice. This is required because SMC gets paid for each couponredeemed. Therefore, every time a Manufacturer is billed on behalf of aretailer for coupons, SMC bills the same Manufacturer for managing thetransaction associated with those same coupons. A ‘due_on’ field storesa date on which payment of the invoice is due.

Having described in detail the contents of a highly referentialrelational database schema comprising a number of linked tables,maintained by one or more database servers, supporting a wide variety ofcomplex queries for rendering a variety of reports and summaries,attention is directed to a description of functionality supported byvarious components identified in FIG. 1 that exploit the above-describedrelational database schema to carry out an electronic coupons managementsystem supporting defining and implementing electronic coupon-enhancedad campaigns.

The following briefly summarizes capabilities/functionality supported bythe electronic coupons system. This list is not exhaustive. Furthermore,the listed capabilities can be combined to render additionalfunctionality.

-   Create and Track Electronic Coupons—Each Coupon will have a Unique    ID (i.e., serial number)-   Create and Track Manufacturer Accounts—Each Manufacturer will have a    Unique ID-   Create and Track Consumer Accounts—Each Consumer will have a Unique    ID-   Create and Track Retailer Accounts—Each Retailer will have a Unique    ID-   Assign a Unique Electronic Coupon to a Unique Consumer—By creating a    coupon instance identifying a particular Consumer-   Validate Electronic Coupon with Purchased Product—By comparing a UPC    of a purchased product to a list of acceptable UPC's designated by    an electronic coupon-   Track and Transfer funds associated with every Electronic    Coupon—through account resolution processes periodically performed    after auditing coupon redemption data-   Maintain Historical transactional level data for all Subscribers    (Consumer, Manufacturer, and Retailer) to the service—facilitates    performing a variety of statistical and trend analyses for    evaluating campaigns and detecting fraudulent activity-   Maintain Historical transactional level data (and events) for all    Electronic Coupons—facilitates statistical and/or trend analysis for    evaluating campaigns and detecting fraudulent redemption activity

Events-Driven Operations

The exemplary system, disclosed by way of example herein, isevent/function-driven. The system events/functions comprise fivecategories: Manufacturer, Consumer, Retailer, Retail Point of Sale, andSaveMyCoupon (SMC) System. Each of these categories is described hereinbelow with reference to FIGS. 5a -e. The data elements associated withthe events described herein below have been previously described abovewith reference to FIGS. 4a -4 v.

Turning to FIG. 5a , a set of Manufacturer events/functions associatedwith the interactions between the Manufacturer client applications 102and Manufacture servers 110 b are identified. The Manufacturer eventsand their associated functions facilitate creating electronic AdCampaigns (electronic coupons), using the Ad Campaign definitions astemplates for creating corresponding electronic coupons for Consumers(consumer accounts), and reimbursing Retailers (retailer accounts) forredeeming the electronic coupons. Manufactures, through their associatedmanufacturer accounts (or Manufacturers), add and maintain theirinternal authorized users, set up parameters for creating Ad Campaigns(lists of valid Universal Product Codes, lists of valid Product Images,Ad Campaign Distribution Areas), create Ad Campaigns (electroniccoupons), and monitor and manage the Ad Campaigns. The manufacturerthrough their manufacturer accounts: monitor, manage, and pay invoicesfor the electronic coupons that have been redeemed by Consumers via theRetailer POS client applications.

Access to a manufacturer's account is specified through configuration ofthe user accounts associated with the Manufacturer in accordance with aManage Authorized Users event 500 supporting a wide variety ofconfiguration functions relating to specifying authorized users under aManufacturer. A system administrator assigns roles and departments tousers to manage access to the Manufacturer's data. The roles determine auser's authority, while the department defines a scope of the specifieduser's authority. The following are exemplary definitions of supportedManufacturer user roles:

-   Manufacturer System Administrator—primary function is to manage user    accounts and system parameters for the Manufacturer (account).-   Campaign Creator—creates and manages Ad Campaigns in a specified    department. Such users do not have the ability to “Approve” an Ad    Campaign-   Campaign Manager—“Approve” previously created Ad Campaigns. Campaign    Managers have access to all summary and detail data for the Ad    Campaigns for a department.-   Accounting Manager—accesses all accounting information and    authorized to pay invoices. Account Managers can also view all Ad    Campaign management information, but Accounting Managers cannot    Create or Approve a Campaign.

A Manage Departments event 502 defines departments. A ManufacturerSystem Administrator uses department definitions to specify a scope ofauthority for a user. Departments are hierarchical, and can containother Departments. The Manufacturer's System Administrator assignsdepartments to users and Ad Campaigns. User assigned to the samedepartment as a particular Ad Campaign can manipulate the Ad Campaignbased on the user's assigned role.

A Manage Product Groups event 504 defines product groups. AManufacturer's System Administrator is responsible for maintaininglists, or groups, of Universal Product Codes (UPCs) that are sent to theRetail POS client applications 106 for product validation of anelectronic coupon. Each defined Product Group specifies a list of validUPCs. Through the Manage Product Groups event 504, the Manufacturer'sSystem Administrator adds UPCs to the system and assigns the ProductGroups to one or more of the Manufacturer's Product Groups. The ProductGroups are used by an Ad Campaign creator when defining an Ad Campaignin accordance with a Create Ad Campaigns event 510 (describedhereinafter).

A Manage Product Images event 506 defines images for use with AdCampaigns. A Manufacturer's System Administrator maintains a list ofvalid product image files displayed in association with Ad Campaigns(electronic coupon templates) via the Consumer client applications 100when they access an electronic coupon offer web site. The Manufacturer'sSystem Administrator adds product image files and then assigns the imagefiles to one or more Product Groups. Each Product Group has anassociated list of product image files. Each Product Group has a defaultproduct image file in an associated list of image files. The productimages are used by a Campaign Creator user when creating and AdCampaigns.

A Manage Ad Campaign Distribution Areas event 508 defines geographicdistribution regions for particular Ad Campaigns. A Manufacturer'sSystem Administrator manages a list of postal ZIP codes that define ageographical scope for electronic coupon distribution. A Manufacturer'sSystem Administrator assigns valid postal ZIP codes to AdCampaign/electronic coupon distribution areas. The Ad Campaigndistribution areas are used by Campaign Creators when Creating AdCampaigns. When a Consumer logs into the SMC System their postal ZIPcode (located in their Account information file) is used to matchagainst a ZIP code in the Ad Campaign distribution area assigned to anAd. Campaign, in order to view available electronic coupons for the ZIPcode (or any other relevant region of interest).

A Create Ad Campaigns event 510 defines Ad Campaigns corresponding toelectronic coupon offers. A Manufacturer's Campaign Creator creates atemplate for a simple rule based promotion (i.e., an Ad Campaign). Forexample: purchase product X and receive $1.00 off the purchase price.When a Consumer requests an electronic coupon, an electronic coupon isinstantiated from the Ad Campaign and is assigned a unique couponinstance ID within the scope of the Ad Campaign. A reference to theelectronic coupon is placed in the consumer's account and in theManufacturer's list of issued electronic coupons. Some information isunique to the electronic coupon, while other information is obtained byreferencing the Ad Campaign (the template). The electronic coupon'sreference to a source Ad Campaign avoids duplication of information. SeeFIGS. 4r and 4s for exemplary Ad Campaign and electronic coupon recordstructures. An exemplary user interface for creating or editing(existing) Ad Campaigns is provided in FIG. 17. In general, the depicteduser interface comprises a set of text field identifiers for definingand Ad Campaign. It is noted that drop down lists are provided forspecifying: Product Group, Coupon Value, Product Image, Campaign Area,Category, and Department. In an exemplary embodiment, the followinginformation is needed to create an Ad Campaign and is provided beforethe Ad Campaign is activated.

-   Unique Ad Campaign ID: This is a required value field for the    purpose of auditing. It is generated by a system server (e.g., the    Manufactures within the system.-   Manufacturer's ID: This is a field that is used for tracking the    accounting information associated with the electronic coupons. The    Manufacturer ID is also passed to a requesting one of the Retail POS    client applications 106 during an electronic coupon redemption. The    Manufacture's ID is fixed (i.e., it can't be edited) and is the    Manufacturer ID that is set up by an administrator of the electronic    coupons system when the Manufacturer was added/enrolled.-   Campaign Department: This is the same Department associated with the    Campaign Creator. The campaign department value is assigned by the    electronic coupon system based on the department of the Campaign    Creator that creates the Ad Campaign. The Campaign Department    designation determines scope of authority. Only members of the    designated department can view, edit, approve, deactivate, or delete    a particular Ad Campaign.-   Campaign Name: This is an optional text field that will be displayed    to help a user identify/differentiate the Ad Campaign.-   Web Activation Date: This is the date the Ad Campaign can be posted    electronically. This field is consulted to verify, in response to a    request from another site to “Save” an electronic coupon, that    issuance of an electronic coupon in a consumer's account is    permitted.-   Web Inactivation Date: This is the date the Ad Campaign is no longer    posted electronically. If the Web Inactivation Date has passed, then    a Consumer cannot “Save” an electronic coupon—the Ad Campaign is in    an Inactive state. If the Web Inactivation Date has passed, then the    Ad Campaign will no longer be displayed to users via the Consumer    applications 100.-   Coupon Start Date: This is the date the electronic Coupon becomes    valid and can be redeemed via the Retailer POS applications 106.-   Coupon Expiration Date: This is the date the electronic Coupon    becomes invalid and can no longer be redeemed at a retailer. After    the coupon expiration date has passed, corresponding electronic    coupon instances will be removed from the Consumer's “My Coupons”    List and automatically archived.-   Product Group Code: This is a field that is used to select the group    of Universal Product Codes (UPCs) that are passed to the Retail POS.    The Product Group code approach to designating products associated    with an Ad Campaign allows the Campaign Creator to select several    UPCs for an Ad Campaign by just selecting one Product Group Code.    The Product Group Code is selected from the (drop down) list of    valid “Product Group Codes” managed by the Manufacturer's System    Administrator.-   Image: This specifies a file containing an image that will be    displayed with the Ad Campaign via the Consumers applications 100.    An image file is selected from a list of Product Images for an    associated Product Group Code. The Manufacturer's System    Administrator manages the lists of images. A default image is    specified for each Product Group Code. If the default image is not    chosen, the pull down menu contains a list of valid alternative    images associated with a currently specified Product Group Code for    an Ad Campaign.-   Product Categories: This is a list of parameters that are used to    describe/categorize the Ad Campaign. Consumers use this type of    information for sorting and “opt-in” criteria on a home site for the    electronic coupon system. For Example: if a Consumer user clicks on    a “Frozen” Category on the home electronic coupon Web site, then all    Ad Campaigns that have categories that match “Frozen,” will be    displayed. Ad Campaign Categories are selected from a list of valid    product categories managed by the electronic coupon System    Administrator.-   Campaign Distribution Area: This is a list of valid ZIP codes where    the Ad Campaign is to be distributed (presented to qualified users    identified as residing within one of the specified ZIP codes). This    is an area (list of ZIP codes) that is selected from the List of    Valid “Ad Campaign Distribution Areas” managed by the Manufacturer's    System Administrator. A ZIP code in the list must match a Consumers'    ZIP Code in order for the Consumer to be able to see the Ad    Campaign, and “Save” the electronic Coupon into their Account.-   New Product: This is a flag that indicates that the Ad Campaign is    associated with what is considered to be a new product, and the    system potentially applies special procedures in the display and    presentation of the associated electronic coupon offers to    Consumers. For example, new products display a Banner across the top    of the Ad Campaign image block to notify the Consumer that this is a    new product.-   Display Text: This is a free-formed text field that allows the Ad    Campaign Creator to specify a short text string they want displayed    with the Ad Campaign on electronic coupon offers presented via the    Consumer applications 100.-   Coupon Value: This is afield specifies the value of the electronic    Coupon (e.g., $1.00 off). It will be displayed on the Ad Campaign    offer presented via the Consumer applications 100. This is afield    that is passed to the Retail POS applications 106 to provide the    Consumer with a discount/award. The value can consist of several    types of data (e.g., dollar off, percent off, get one free). This    can be used to pre-populate the Assumed Redemption Value field.-   Assumed Redemption Value: This is a temporary numeric value    associated with the Coupon Value field. It is used to calculate    values for the Ad Campaign, prior to the Ad Campaign's associated    electronic Coupons being redeemed. This field is used for    calculating the “Budget” for electronic coupons, and for other    forecast reporting purposes. The Assumed Redemption Value field is    auto-populated with a default value associated with the Coupon    Value. If this field cannot be auto-populated, then the Campaign    Creator must add an Assumed Redemption Value before the Ad Campaign    can be completed. For example, if the Ad Campaign's Coupon Value is    “Buy One-Get One Free”, selecting the “Coupon Value” cannot assign    an Assumed Redemption Value, therefore, an Assumed Redemption Value    is provided in order to calculate an estimated budget for electronic    coupons having a non-fixed monetary value.-   Budget for Coupons: This is the amount of money that is budgeted for    the Ad Campaign. In an exemplary embodiment, the system can    calculate the “Maximum Number of Coupons” to be issued based on the    budgeted amount. The system calculates the “Maximum Number of    Coupons” to be issued based on the “Coupon Value” and other    parameters set up in the system.-   Maximum Number of Coupons: This is the total number of coupons that    the System can create for the Ad Campaign. In an exemplary    embodiment, once the number of electronic Coupons issued is equal to    the Maximum Number of Coupons, the System will set the Ad Campaign    Status to “Web Inactive” so no more electronic Coupons can be    issued.-   Campaign Creator: This is the identifier (e.g., user ID) of the    person who created the Ad Campaign.-   Campaign Approver: This is the identifier of the person who approved    the Ad Campaign. The approver must be a Department Manager for the    Ad Campaign's “Campaign Department”.-   Approval Date: This is the date the “Department Manager” approved    the Campaign. A Manage Campaign Budget Settings event S12 provides    functionality enabling the Manufacturer's System Administrator to    take into consideration all of the fees associated with campaign    management when calculating the “Maximum Number of Coupons” that can    be distributed before the Ad Campaign is “Web Inactivated” by the    SMC System. Furthermore, the Manufacturer's System Administrator can    add any fee to the system that they want to be taken into    consideration when calculating the Maximum Number of Coupons. For    Example the administrator can add a Retailer's Processing fee,    System Processing Fee, internal cost structures, etc.

A Support Cross Product (Complex) Promotions event 514 provides anelectronic template for creating a complex promotion. The event supportscreating a complex multi-product, or cross product promotion. Forexample, if a Consumer purchases an APPLE IPOD then they can receive 10free down loads from ITUNES. When a Consumer requests an electroniccoupon, an instance of the Ad Campaign is created with a Unique ID andplaced in the Consumer's account. Some information is unique to theCoupon, and other information is obtained by referencing the AdCampaign. This prevents duplication of information.

A Support Complex Loyalty Promotions event 516 provides an electronictemplate for a complex loyalty promotion. It is designed to create acomplex multi-product, or cross product promotions that take intoaccount purchase history. For example, if a Consumer purchases &evensandwiches at a restaurant (over some specified period of time), thenthey can receive the twelfth one free. When a Consumer requests anelectronic coupon, an instance of the electronic coupon is created fromthe Ad Campaign with a Unique ID and placed in the consumer account.Some information is unique to the electronic coupon (e.g., the sandwichcount), and other information is obtained by referencing the AdCampaign. This prevents duplication of information.

A View Campaign Summary Information event 518 provides a list of the AdCampaigns for a specified view (e.g., Current Campaigns for Department1). The summary Ad Campaign information is laid out in a spreadsheetreport style format where each row represents an Ad Campaign. See, e.g.,FIG. 17. Each row has summary information about a specific Ad Campaign(e.g., budget, total number of coupons issued, value of issuedelectronic coupons, total number and value electronic coupons redeemed,campaign expiration date, etc.). The specified values from each row aretotaled and the accumulated value information is displayed at the top ofthe page (i.e., Summary for all Ad Campaigns).

A View Campaign Summary Statistics event 520 provides statisticalinformation for all of the Ad Campaigns for a specified view (e.g.,Current Campaigns for Department 1). This information is laid out in ageneral report structure, listing attributes and their associatedvalues. By way of example, the statistical attributes comprise thefollowing categories: Total Campaign Budget/Performance Information,Redemption Statistics, Campaign Budget/Performance Information byConsumer's ZIP Code, Redemption Statistics by Consumer's ZIP Code, andRedemption Statistics by Retailers that Redeemed the electronic Coupon.In an exemplary embodiment, the value of each attribute in thestatistical report is the total of all the Ad Campaigns statistics inthe specific view.

A View Statistical Forecasting event 522 provides statistical data thatis used to predict performance of electronic coupons based on theirperformance history. This Statistical information is calculated usingknown statistical analysis methods.

A View Campaign Statistics event 524 provides statistical informationfor an Ad Campaign. This information is laid out in a general reportstructure, listing the attributes and their associated values. By way ofexample, the attributes are broken into six categories: Ad CampaignDetail Information, Total Campaign Budget/Performance Information,Redemption Statistics, Campaign Budget/Performance Information byConsumer's ZIP Code, Redemption Statistics by Consumer's ZIP Code, andRedemption Statistics by retailer that Redeemed the electronic coupon. Adescription of each follows:

-   Ad Campaign Detail Information    -   Electronic Activation/Inactivation, Coupons Start/Expiration        Date, Approved By/Date, Electronic Deactivation Date, etc.-   Total Campaign Budget/Performance Information    -   Number and Value of Coupons Budgeted, Number and Value of        Coupons Issued/Redeemed/Outstanding, Percent of the Budget for        Coupons Issued/Redeemed/Outstanding, etc.-   Redemption Statistics    -   Mean, Media, and Mode time for Redemption for all electronic        Coupons Redeemed.-   Campaign Budget/Performance Information by Consumer's ZIP Code    -   Number and Value of Coupons Issued/Redeemed/Outstanding by        Consumer's ZIP code, Percent of the Budget for Coupons        Issued/Redeemed/Outstanding, by Consumer's ZIP code, etc-   Redemption Statistics by Consumer's ZIP Code    -   Mean, Media, and Mode time for Redemption for all electronic        Coupons Redeemed by Consumer's ZIP Code-   Redemption Statistics by Retailer that Redeemed the electronic    Coupon    -   Number and Value of Coupons Redeemed by Retailer.

An Edit, Approve, or Deactivate Ad Campaigns event 526 provides theCampaign Creator and the Campaign Manager the ability to modify the AdCampaign, after it has been created, and before it becomes Active. In anexemplary embodiment, once the Ad Campaign becomes Active the only thingthat can change is the Web Inactivation Date.

-   When the Ad Campaign is created its state is set to WIP or “Work in    Process.”-   The Ad Campaign can be edited or deleted, any field can be modified    until it has been Approved (i.e., while the Ad Campaign is in the    WIP state).-   The Ad Campaign can be approved by a Campaign Manager or higher.    This action sets the Ad Campaign state to “Approved”, logs the    Approver's ID, the Date and Time the Ad Campaign was approved, and    prevents any further modifications to the Ad Campaign definition.-   Once the Date and Time of “Web Activation” occurs the SMC System    will automatically set an Approved Ad Campaign to an Active state.    Once the Ad Campaign is in the Active state the electronic coupon    system creates associated electronic coupons from any Consumer    request (e.g., via a home coupon site associated with the electronic    coupons system, a manufacturer website, or other electronic    Advertisement).-   Once the Date and Time of “Web Inactivation” occurs the SMC System    will automatically set the Active Ad Campaign to an Inactive state    at which time the electronic coupons system will stop creating    associated electronic coupons for the Ad Campaign.-   The Ad Campaign can be deleted before it enters an Active (even    after it has been approved) because no Consumers have been able to    request and save electronic coupons associated with the Ad Campaign.    However, once the Ad Campaign becomes Active, it can only be    deactivated.-   The Ad Campaign can be Deactivated after it has become Active. This    action can only done by a Campaign Manager or above. This action    sets the Status to “Web Inactive” and prevents anyone from taking    another electronic Coupon. It does not affect any of the existing    electronic Coupons associated with the Ad Campaign.

A View Invoice Summary Information by Campaign event 528 provides aview, for Accountant users, of the all Coupon Invoice statusesassociated with an Ad Campaign. The electronic coupons can be in any ofthe following states: Saved (to the Consumer Account), Redeemed (by theRetailer), Invoiced, Paid, Posted, Expired or Removed (from theConsumer's Account).

A View Invoice Summary Information by Retailer event 530 allows theAccountant users of a Manufacturer to view a summary of all of theelectronic coupons and their invoice status (Redeemed, Invoiced, Paid,and Posted) accumulated according to the retailers that redeemed thecoupons.

A View Invoices By Retailer event 532 allows the Accountant users of aManufacturer to view a list of all of the Invoices, by Retailer thatRedeemed the Coupons. These Invoices can be in the following status:Invoiced, Paid, and Posted.

A Pay invoice From Retailer event 534 allows the Accountant users to paya retailer's invoice. This event tracks the method of payment, datepaid, and a confirmation number associated with the method of payment(e.g., check number). This also changes the status for each coupon thatmakes up the invoice to “Paid”.

A Pay Invoice From Coupons Service Provider event 536 allows theAccountant users to pay an invoice from the provider of the electroniccoupon service. This tracks the method of payment, date paid, and aconfirmation number associated with the method of payment (e.g., checknumber).

A View Invoice Detail event 538 allows the Accountant users to view aninvoice from a Retailer and its associated Invoice from the electroniccoupon service provider. This lists all of the coupons that make up theinvoice, the total number of coupons in the invoice, the total amount ofthe invoice, due date, invoice status, payment method, and otherinformation.

A Print Report Pages event 540 allows a User to print any of the pagesthey can view.

A Manage Campaign Fees event 542 allows the Manufacturer to manage thelist of campaign management fees and the value associated with thesefees. The list is used to calculate the number of Coupons that can beissued based on the Campaign Budget.

Turning to FIG. 5b , a set of consumer events are identified that areassociated with a Consumer (consumer account). The consumer events andthe functionality invoked on Consumer servers 110 a (or other servers)when they are triggered enable consumer users, through the Consumerapplications 100, to create an account, search/view electronicadvertisements (Ad Campaigns), and request Electronic Coupons. The setof exemplary consumer events supported by the present system aredescribed herein below.

A View Default Consumer Screen (Home Page) event 550 provides defaultlogin pages on the Consumer applications 100 and are used to conveyinformation about the electronic coupons system and affiliated partners.

A Provide Consumer Login Prompt event 552 initiates a logon transactionfor a consumer user via the Consumer applications 100.

A Create and Edit Consumer Accounts event 554 provides a page to createa Consumer (consumer account). Each Consumer is initially establishedwith the following identification/authentication information:

-   User Name—email address-   Password-   ZIP Code: The ZIP Code is used to match the electronic coupons to    the Consumer based on location. Some products/offers are not    distributed nation wide. Therefore it is imp011ant to know the    location of the Consumer and match it with the location of the    retailer that can redeem the electronic coupon for a Manufacturer.-   List of Preferred Retailers: This is a list of the retailers that    the Consumer shops. This allows the system to provide the Consumer    with any of the retailer's in-store promotions. The system matches    retailer's in-store promotions against the Consumer's list of    preferred retailers and ZIP Code in order to present the correct set    of Ad Campaigns.-   List of Preferred Shopper Card ID: This is the list of the    Consumer's preferred shopper card numbers for each of the “Preferred    Retailers”. If the Preferred Retailer has a frequent shopper card it    is captured here in order to identify this Consumer with the system    at the Point of Sale (POS). Example: If the Consumer is at Kroger,    and is using their Kroger's Frequent Shopper Card, the System will    recognize their Kroger Frequent Shopper Card ID and retrieve their    electronic coupons. If the Consumer then goes to Safeway and uses    their Safeway Frequent Shopper Card, then the system will recognize    their Safeway Frequent Shopper Card ID and retrieve their electronic    coupons.-   Electronic Coupon System ID: This is the electronic coupon system    card ID that is used in place of a Retailer's Frequent Shopper Card.    Some stores that are connected to the system may not have a frequent    shopper card program so the electronic coupon system Card can be    used in place of a frequent shopper card.-   Phone Number: This can be used in place of a retailer's frequent    shopper card or an electronic coupon system ID. This is an    alternative way for the consumers to identify themselves to the    electronic coupon system at a retailer's POS.

A View Available Coupons event 556 provides the Consumer the ability toview all of the available electronic coupons in the electronic couponsystem. These electronic coupons are filtered based on the Consumer'sZIP Code and can be filtered by Manufacturer, product category, andsorted by value and expiration date. See FIG. 6 for an exemplary userinterface for viewing available Ad Campaigns.

A View In-Store Coupons event 558 provides the Consumer the ability toview all of the available retailer's electronic coupons (in-storepromotions) in the electronic coupon system. These electronic couponsare filtered based on the Consumer's ZIP Code and a list of preferredretailer's. In an exemplary embodiment the in-store coupons are filteredby retailer, product category, and sorted by value and expiration date.See, FIG. 7 for an exemplary user interface for viewing availablein-store Ad Campaigns.

An Add a Coupon to the Consumer's Account event 560 enables issuing anelectronic coupon to a requesting Consumer. A Consumer can add anelectronic coupon by a logged on user clicking on a “SaveMyCoupon”button associated with a particular Ad Campaign. The system creates aninstance of the electronic coupon, and links the coupon to the AdCampaign that it references (via the Campaign ID), the Consumer that“Saved” it (via the Consumer ID), and the Manufacturer (via theManufacturer ID). In addition the electronic coupons log additionalinformation such as the date and time the coupon issued.

A View Consumer's Coupons event 562 enables a Consumer to view all ofthe electronic coupons within the Consumer account. The electroniccoupons are viewed by manufacturer, product category, and sorted byvalue and expiration date.

A Print a List of Coupons event 564 initiates printing a designated listof coupons issued to the consumer.

A Search Campaigns Using Shopping List event 566 provides the Consumerthe ability to create a shopping list and then search all availableelectronic coupons for electronic coupons that meet the criteria oftheir shopping list.

A Provide Basic Coupon Search event 568 provides the Consumer theability to search for electronic coupons based on a product name (e.g.,TIDE).

A Provide Expanded Coupon Search event 570 provides the Consumer theability to search for electronic coupons based on an electronic couponcategory (e.g., Household Cleaners).

A Provide Search on Product Preferences event 572 provides the consumeruser the ability to select a product then search all available couponsfor similar coupons. For example, if a consumer selects an electroniccoupon for TIDE laundry detergent, the search will display electroniccoupons for CHEER and any other laundry detergents.

An Allow Banner Ad Access event 574 provides access to the electroniccoupon system through external web sites and banner ads. In other words,a user can add an electronic coupon to their electronic coupon systemaccount from another web page. This is accomplished by embedding a URL(provided by the electronic coupon system) into another web page'selectronic coupon offer such that when a user clicks on the electroniccoupon offer the URL sends a command to the electronic coupon system todeposit the electronic coupon into their account. The electronic couponsystem will:

-   Check to see if the coupon requester is already logged in.    -   If not it will prompt the user to Log in    -   If the coupon requester doe not have an electronic coupon system        account, the system will prompt the coupon requester to create        an account (See, Create and Edit Consumer Accounts event 554)-   Check the validity of the URL (i.e., does the URL reference an    enrolled Manufacturer's Ad Campaign)-   Check to make sure the Ad Campaign is still active (i.e., is the    electronic coupon system still accepting requests to create    electronic coupons for the Ad Campaign?)-   Create an electronic coupon and put it into the coupon requestor's    account

An Allow Wireless Ad Access event 576 provides access to the systemthrough PDAs and Digital Cell Phones (e.g., A coupon requester can addan electronic coupon to their account from a cell phone). This ishandled much like the Allow Banner Ad Access event 574, except thisinformation uses a WAP-like proxy server to handle the interface betweenthe web and the wireless provider's PDA.

An Allow Internet-connected Television Access event 578 provides accessto the system through selectable icons presented to users on atelevision (e.g., an icon on a screen presenting a productadvertisement) having Internet access and remote control. This event ishandled much like the Banner Ad Access event 574, except thisinformation uses a WAP-like proxy server to handle the interface betweenthe web and the television having Internet connectivity

Turning to FIG. 5c , a set of retailer events are identified that areassociated with functionality invoked on the Retailer servers 110 c bythe Retailer applications 104. The retailer events and their associatedfunctionality enable retailer users to manage and monitor their internalAd Campaigns and Manufacturer's Electronic Coupons. A Retailer is aManufacturer, in that, a Retailer can create in-store Ad Campaigns.Therefore a Retailer has all of the same capabilities as a Manufacturer.A Retailer also has additional capabilities associated with redeeming,invoicing, and settling electronic coupons—i.e., managing electroniccoupons after they have been presented by a consumer.

A Manage Authorized Users event 580 enables the setting up of a retaileraccount (Retailer) and retailer user accounts having specified rolesassociated with the retailer account. Access to the retailer's systemwill be determined by setting up Accounts. Roles and departments/regionsdetermine account access by particular users. Roles determine a user'sauthority and the Department/Regions determine the scope of theirauthority. A Retailer is a type of Manufacturer, and therefore aRetailer includes all the roles of a Manufacturer.

-   System Administrator—primary function is to manage user accounts and    system parameters.-   Campaign Creators—create In-Store Ad'Campaigns-   Campaign Managers—is required in order to approve an in-store Ad    Campaigns-   Accounting Manager—can view all accounting information and pay    invoices. They can also view all campaign management information,    but they cannot create or approve an Ad Campaign.

Users Specific to Retailer:

-   Store Manager/Director—is required in order to manage redeemed    electronic coupons for stores. Similar to a Manufacturer's    Department Manager, a Store Manager/Director can view all summary    and detail information for all of the stores for which they are    responsible.-   Accounting Managers—have the additional authority to post/review    invoices.

A Manage Departments and Regions event 582 enable a System Administratorto use Departments/Regions to specify the scope of authority for a userof the electronic coupon system. Departments/Regions are hierarchicaland can contain other Departments/Regions respectively.

-   Departments/Regions are assigned to users-   Departments are assigned to Ad Campaigns-   Regions are assigned to stores

A Manage Stores event 584 provides the user the ability to d stores to aRetailer's Region for data reporting purposes.

A Manage POS (Registers) event 586 provides the user the ability to adda POS System (Register) to a Store in order to track and reportelectronic coupon redemptions.

A View Summary of Coupons Redeemed by Store event 588 provides a list ofall of the electronic coupons redeemed for a specified view (byCompany/Region) sorted by store. This information is laid out in aspreadsheet report style format where a retailer user can see the totalnumber and the total value of all coupons redeemed, invoiced, paid andposted. Each row in the report has the same summary information abouteach store identified in the view. See, FIG. 8 providing an exemplaryuser interface associated with the View Summary of Coupons Redeemed byStore event 588.

A View Summary of Coupons Redeemed at a Store event 590 provides a listof all of the electronic coupons redeemed at a specified store sorted bymanufacturer ID. This information is laid out in a spreadsheet reportstyle format where a Retailer can see the total number and the totalvalue of all coupons redeemed, invoiced, paid and posted for a specificview. Each row in the report has the same summary information about eachManufacturer in the view. See, FIG. 9 providing an exemplary userinterface associated with the View Summary of Coupons Redeemed at aStore event 590.

A View Summary of All Coupons Redeemed by Manufacturer event 592provides a list of the electronic coupons redeemed for a specified view(by Company/Region) sorted by manufacturer ID. This information is laidout in a spreadsheet report style format where a Retailer can see thetotal number and the total value of all electronic coupons redeemed,invoiced, paid and posted for a specific view (by Company/Region). Eachrow in the report has the same summary information about eachManufacturer in the view.

A View Summary of Invoices by Manufacturer event 594 provides a view,for the accountant users of a Retailer, containing a list of all of theinvoices sorted by manufacturer.

A Manage Invoicing Date event 596 enables the accountant users of theRetailer to set the invoice dates (i.e., the date that invoices will begenerated and issued to Manufacturers).

A Post Paid Invoices event 598 enables accountant users of the Retailerto post invoices as “Paid”.

A Create In-Store Ad Campaign event 599 enables a Retailer user tocreate an Ad Campaign for in-store use in the same manner at the CreateAd Campaigns event 510.

Turning to FIG. 5d , a set of events are identified that are invoked bythe Retail POS applications 106 on the Retailer POS servers 110 d duringa checkout operation of a consumer having a consumer account on theelectronic coupon system. The Retailer POS events support the functionalinterface between the Retailer POS servers 110 d of the electroniccoupon system and the Retailer POS applications 106 operating atretailer's checkout counters. The Retailer POS applications 106 validateretrieved electronic coupons for an identified Consumer against a set ofpurchases registered at the checkout counter's POS system. The RetailerPOS applications 106 initiate sending back information about anyqualifying redemptions of the retrieved electronic coupons for thepurpose of updating the appropriate electronic coupon system recordsmaintained by the database servers 120 that facilitates tracking andreporting coupon redemption information and invoicing the Manufacturerfor the electronic coupons that have been redeemed during the checkoutprocess.

The Retailer POS applications 106 identify the Consumer (via a frequentshopper card, etc.) and send a request for the Consumer's electroniccoupons to the Retailer POS servers 110 d. The Retailer POS servers 104submit appropriate queries to the database servers 120 for retrieval ofthe Consumer's electronic coupons. The Retailer POS servers 110 dforward the Consumer's retrieved electronic coupons (provided by thedatabase servers 120) to the requesting one of the Retailer POSapplications 106. It is envisioned that in embodiments of the electroniccoupon system, only a portion of the Consumer's total set of electroniccoupons are provided by the electronic coupon system in response to arequest from one of the Retailer POS applications 106 based upon afiltering criterion (e.g., the type of store, the store ID, a set ofcategories provided by the POS application, etc.). For example, in-storeelectronic coupons are only applicable to their particular identifiedretail establishment. In other embodiments all the valid (unexpired)electronic coupons for the identified Consumer are provided to therequesting one of the Retail POS applications 106. The POS application:(1) applies the complete UPCs and any other qualifying requirements(e.g., purchase quantity) of the set of retrieved coupons to the UPCs ofthe purchases registered at the POS device, and (2) credits the consumeraccording to the specified coupon value. If any of the electroniccoupons are accepted and redeemed by the Retailer POS application, thenthe Retail POS application sends a redemption notification message tothe Retailer POS servers 110 d along with detailed information about thetransaction.

Turning to the particular supported POS events, a Request for ConsumerCoupons event 600 enables the Retailer POS applications 106 request theRetailer POS servers 110 d to provide identified Consumers' electroniccoupon lists. In an exemplary embodiment, the Retailer POS servers 110 dreceive XML formatted requests from the Retailer POS applications 106over a Secure Sockets Layer using the Internet. An exemplary XML requestcontains the following:

-   ID-Type: the type of Consumer Identifier (e.g., Electronic coupon    system ID, Phone Number, Retail Frequent Shopper ID, etc).-   Consumer-ID: the unique Consumer Identifier associated with the    ID-Type.-   Retailer-ID: identifies the Retailer that is sending the request.

A POS Response for Consumer Coupons event 602 provides the Retailer POSapplications 106 to receive a request for the Consumer's ElectronicCoupons. The following information is returned by the Retailer POSservers 110 d in response to the Consumer electronic coupon requestsfrom the Retailer POS applications 106:

-   ID-Type: the type of Consumer Identifier. It is typically the unique    identifier associated with the service (e.g., Electronic coupon    system). It sets the primary Consumer Identifier for the follow-on    transactions.-   Consumer-ID: the unique Consumer Identifier associated with the    ID-Type-   Consumer Information: a list of information about the identified    consumer account that can be presented to the purchaser associated    with the identified consumer account. It can contain the consumer    name, consumer historical savings total, the number of electronic    coupons in the identified consumer's account, and anything else that    a POS system might present to a customer during/after the checkout    process.-   List of Coupons: a list of electronic coupon descriptions/records.    Each electronic coupon description in the list contains the    following information:    -   Electronic Coupon-ID: a unique identifier for the electronic        coupon. This is required to track the status of the coupon as it        transitions through the system.    -   Manufacturer ID: a unique identifier of the company that is        responsible for the electronic coupon. In an exemplary        embodiment, the system treats the identified manufacturer as the        party responsible for paying for the redemption value and any        associated costs for a redeemed coupon.    -   Type: type of electronic coupon (e.g., simple, complex,        loyalty).    -   UPC List: list of UPCs associated with the electronic Coupon.        The UPCs are compared to the UPCs registered during a customer's        check out. In an exemplary embodiment, each entry in the UPCs        listed for an electronic coupon consist of the following        information:        -   UPC (Universal Product Code)        -   Check digit    -   Value: defines the reward structure to the POS applications 106.        -   Type: communicates the type of the reward (e.g., fixed or            percent oft)        -   Amount: the reward. amount (e.g., $0.50, or 10%)        -   Display: used to display information to the Consumer during            the transaction            A POS Redeems Coupons event 604 enables Retail POS            applications 106 to inform the Retail POS servers 110 d that            a coupon has been redeemed and initiate a series of update            and accounting processes carried out by the Retail POS            servers 110 d and the database server 120. The following            information is sent from the POS Applications 106 to the            servers in order for the electronic Coupon's status to he            set to “Redeemed”:-   ID-Type: This is the type of Consumer Identifier (e.g.,    SaveMyCoupons ID, Phone Number, Retail Frequent Shopper ID, etc)-   Consumer-ID. This is the unique Consumer Identifier associated with    the ID Type.-   Retailer ID—This is the unique identifier for the Retailer-   Store ID—This is the unique identifier for the Retailer's Store-   Register ID—This is the unique identifier for the Store's POS System-   Operator ID—This is the employee identifier operating the POS System-   Transaction ID—This is a unique identifier for the transaction-   Time Stamp—This is the date and time stamp of the transactions-   Coupons Redeemed—This is a list of electronic Coupons Redeemed    during the transactions. Each electronic Coupon Redeemed has the    following information:    -   Coupon ID—This is the unique electronic Coupons ID that was        received from the Server, and redeemed by the POS System.    -   List of UPC—This is a list of the Universal Product Codes that        were used to validate the electronic Coupon for redemption:        -   Code        -   Check Digit    -   Redemption Value: This is the actual value of the reward. It is        used in order to communicate to the Server the actual value of        the electronic Coupon when it is redeemed. Example: if the        electronic Coupon is “buy one get one free” then the POS System        returns the value of the free item rewarded.

Turning to FIG. 5 e, a set of electronic coupon system events areidentified. The electronic coupon system events are designed to support,manage and monitor all of the enrolled/defined user entities of theelectronic coupon system (e.g., Manufacturers, Consumers, Retailers andRetailer POS). Additionally the electronic coupon system events schedulehousekeeping activities required to keep the electronic coupon system upto date and synchronized. In the description of an exemplary embodimentthat follows, the events are grouped in three categories: AdministrativeSystem Management, Event Scheduling, and External Device Management.

Administrative System Management Events:

A Manage Manufacturer Accounts event 610 enables an electronic couponsystem System Administrator to create a manufacturer account(Manufacturer) and pre-populates the Manufacturer with standard defaultdata (e.g., postal ZIP codes, Product Groups, Product Categories, etc.),and profile information.

A Manage Retailer Accounts event 612 enables an electronic coupon systemSystem Administrator to create a retailer account (Retailer) andpre-populate the Retailer with standard default data (e.g., postal ZIPcodes, Product Groups, Product Categories, Regions, etc.), and profileinformation.

A View Manufacturer's Data event 614 enables the electronic couponsystem System Administrator to view all of the information that theManufacturer users can view.

A View Retailer's Data event 616 enables the electronic coupon systemSystem Administrator to view all of the information that the Retailerusers can view.

A View Consumer Data event 618 enables the electronic coupon systemSystem Administrator to view all of the information about a Consumerthat the Consumer users can view.

A Manage Coupon Value Codes event 620 enables the electronic couponsystem System Administrator to add and manage all of the electroniccoupon value codes needed to communicate discount information to theRetailer POS applications 106.

A Manage Product Categories event 622 enables the electronic couponsystem System Administrator to add and manage all of the ProductCategories used to categorize the Ad Campaigns in the electronic couponsystem.

A Manage Coupon Invoice event 624 enables the electronic coupon systemSystem Administrator to manage invoices in the same manner as a Retaileruser can manage the retailer's mvolces.

A Manage Batch Jobs event 626 enables the electronic coupon systemSystem Administrator to manage and schedule batch jobs (listed asseparate events described herein below).

Event Scheduling (Batch Jobs) Events

An Email Notifications event 628 enables the electronic coupon system toautomatically email a Consumer user when their electronic coupons areabout to expire, or according to any other defined criterion such as: afollow-up supplemental marketing message based upon the perceivedinterest of the Consumer in previously selecting an electronic coupon.Thus, the Email Notifications event 628 provides a focusedsupplemental/follow-up marketing tool for Manufacturers.

A Manage Coupon Expiration event 630 enables the electronic couponsystem to automatically copy/move, expired electronic coupons fromConsumers' active electronic coupon lists to a coupon archive, andchange the electronic coupon's state form “Saved” to “Expired”.

An invoice Coupons event 632 enables the electronic coupon system toautomatically run a batch job that creates and rates invoices (i.e.,calculate the amount due) for Retailers and the electronic coupon systemservice provider. If an invoice has been scheduled by a Retailer, thenthe system will:

-   Search for the electronic coupons which have been redeemed by the    Retailer (electronic Coupons with Status “Redeemed”)-   Create a Retailer's Invoice for each of the Unique Manufacturer IDs    associated with the electronic coupons-   Create an invoice for each of the Retailer's invoices, assign an    invoice number to the Retailer's invoice, and visa versa. (i.e., tie    the invoices together)-   Assign the electronic coupon to the Retailer's invoice-   Set the electronic coupon's state to “Invoiced” (from “Redeemed”)-   Rate Retailer's Invoice (see, Rate Invoice for Retailer event 634)-   Rate SMC's Invoice (see, Rate Invoice for Electronic Coupon Service    event 636)

A Rate Invoice for Retailer event 634 enables the electronic couponsystem to automatically rate a Retailer's invoices based on terms of amanufacturer/retailer contract. The system will:

-   Count the number of electronic coupons in the invoice, and-   Total the face value of the electronic coupons

A Rate Invoice for Electronic Coupon Service event 636 enables theelectronic coupon system to automatically rate electronic coupon systemservice invoices based on terms of a Manufacturer/Service providercontract. The system will:

-   Count the number of electronic coupons and-   Charge the Manufacturer based on the number of electronic coupons    redeemed.

A “Web Inactivate” Ad Can1paigns event 638 enables the electronic couponsystem to automatically set the status of an Ad Campaign to “Inactive”for all Ad Campaigns that have reached their Web Inactivation Date.

External Device Management

A Manage POS interfaces event 640 enables the electronic coupon systemto configure and monitor the Retailer POS applications 106.

A Manage System Resources event 642 enables the electronic coupon systemto optimize performance of primary and secondary storage, memory,communication bandwidth, and CPU utilization, etc.

As noted previously herein above with reference to FIG. 4r , an “AdCampaign” defines a template for a rule-based promotion (from whichelectronic coupons are issued to Consumers). The Ad Campaign structureprovides the system with general information about an advertisementcampaign (like the promotion details, distribution area, validationdates, etc), which is used by everything in or connected to the system(e.g., users, electronic Coupons, POS Systems, search engines, externalweb sites, web browsers, etc). In addition, an Ad Campaign structure isassociated with status parameters that specify which, of a set ofstates, the Ad Campaign presently occupies. In and exemplary embodiment,Ad Campaigns can occupy the following states: Work in progress (WIP)700, Approved 702, Active 704, Inactive 706, and Expired 708. Each ofthese states, and the transitions between them, are described hereinbelow with reference to FIG. 10.

Turning to FIG. 10, an exemplary Ad Campaign state diagram depicts eachof the above-identified states and associated transitions. An AdCampaign initially occupies the WIP state 700 when it is initiallycreated and its parameters have not yet been fully defined (orapproved). In an exemplary embodiment, the Ad Campaign can be edited ordeleted, and any field can be modified only while in the WIP state 700.

Upon approval by a user having a manager role (or another entity havinggreater privileges than a manager), the Ad Campaign transitions to theApproved state 702 and the ability to edit the Ad Campaign ceases.However, it can still be deleted. The Approver's ID and the Date andTime of approval are written to the appropriate fields the Ad Campaignrecord.

In an exemplary embodiment, once specified date and time for “WebActivation” passes, the electronic coupon system automaticallytransitions the Approved Ad Campaign to the Active state 704. While inthe Active state 704, the Ad Campaign is available for publication toConsumers and electronic coupons can be issued to Consumers in responseto their requests and according to the guidelines specified by the AdCampaign. Once activated, the Ad Campaign cannot be deleted.

Thereafter, when the Ad Campaign's specified “Web Inactivation” date andtime is reached, the electronic coupon system causes the Ad Campaign toenter the Inactive state 706. While in the inactive state 706,electronic coupons cannot be issued from the Ad Campaign. The act ofsetting an Ad Campaign's Web inactive parameter so that it enters anInactive state can be carried out either automatically or manually andcan occur for a number of reasons including: expiration of theoriginally specified time and date, meeting a limit in issued electroniccoupons, detection of an error or fraud, etc. Deactivation, in anexemplary embodiment, can be manually initiated only by a CampaignManager (or higher priority role in a Manufacture). Deactivation of anAd Campaign, which causes a transition to the Inactive state 706,prevents issuance of additional electronic coupons. It does not affectexisting electronic coupons associated with the Ad Campaign.

The system transitions from the inactive state 706 to the Expired state708 in response to formal recognition by the system housekeeping batchprocesses that the Web Inactivation date has passed for the Ad Campaign.

As noted previously herein above with reference to FIG. 4s , an“electronic coupon” structure defines an instance of an electroniccoupon generated, upon request from a Consumer, from an Ad Campaigndefined according to the fields identified in FIG. 4r . The electroniccoupon instance's data structure contains fields that facilitatespecifying detailed information associated with a set of states defininga lifetime of an electronic coupon. In addition, an electronic couponstructure is associated with status parameters that specify which, of aset of states, the electronic coupon presently occupies. In andexemplary embodiment, electronic coupons can occupy the followingstates: Saved 800, Redeemed 802, Invoiced 804, Paid 806, Posted 808,Expired 810, and Removed 812. Each of these states, and the transitionsbetween them, are described herein below with reference to FIG. 11.

Turning to FIG. 11, an exemplary electronic coupon state diagram depictsthe above-identified states and associated transitions. An electroniccoupon initially occupies the Saved state 800 when it is initiallycreated from an active Ad Campaign and stored in a consumer account(Consumer). A saved electronic coupon has a variety of informationincluding, among other things, a link to the Ad Campaign from which itwas issued to the Consumer. A saved coupon is stored in a consumer'slist of electronic coupons and can be recalled for display along withthe other saved electronic coupons issued to the Consumer.

The electronic coupon transitions from the Saved state 800 to theRedeemed state 802 in association with a redemption event (describedherein above with reference to FIG. 5d ) carried out throughinteractions between one of the Retail POS applications 106 and theRetail POS servers 110 d during a purchase transaction by a userassociated with the Consumer to which the previously saved couponpreviously issued. The electronic coupon resides in the Redeemed state802 awaiting invoice processing by the electronic coupon system.

The electronic coupon transitions from the Redeemed state 802 to theInvoiced state 804 in response to an invoice processing event (describedherein above with reference to FIG. Se). In the exemplary embodiment,the invoicing of coupons is carried out on a scheduled basis as a batchprocess that creates and issues invoices based upon a set of couponsthat presently reside in the Redeemed state 802.

In an exemplary embodiment, the electronic coupon resides in theInvoiced state 804 until a responsible party (the Manufacturer) has paidthe invoice with which the invoiced coupon is associated to theretailer. In response to an invoice payment event (described herein withreference to FIG. 5a ), the electronic coupon transitions from theInvoiced state 804 to the Paid state 806.

By way of example, the electronic coupon resides in the Paid state 806until the Retailer associated with the redemption event has acknowledgedreceipt of the payment from the manufacture. Thus, in the exemplaryembodiment, in response to an invoice posting event (described hereinwith reference to FIG. 5c ) initiated by one of the Retailerapplications 104, the electronic coupon transitions from the Paid state806 to the Posted state 808. Thereafter, at some later time of variableduration, the electronic coupon is archived in its final state—in thiscase the Posted state 808.

The above state transitions describe the normal course of a redeemedcoupon. However, if the coupon expired (due to passage of time beyondthe electronic coupon's specified expiration date). In response to amanage coupon expiration event (described herein with reference to FIG.5e ), the expired electronic coupon transitions from the Saved state 800to the Expired state 810. The system archives the expired electroniccoupon from the Expired state 810.

Alternatively, a user associated with the Consumer, to which theelectronic coupon has been saved, can remove the electronic coupon inthe Saved State 800. In response to a request to delete a previouslysaved coupon, the system marks e electronic coupon as “removed” and theelectronic coupon transitions from the Saved state 800 to the Removedstate 812 from which the electronic coupon is thereafter archived.

Turning to FIG. 12, the following summarizes the general operation ofthe system. Initially, a manufacturer subscribes to the electroniccoupon system service and is assigned a unique identifier. Thereafter,the manufacturer creates an electronic coupon offer during step 900. Byway of example, the electronic coupon offer is an object template thatdefines the coupon offer, but lacks a specific consumer ID and couponID. Electronic coupon offers can be presented in a variety of ways. Incases where an electronic coupon offer resides outside the electroniccoupon system, an embedded link is provided to the electronic couponsystem service within any form of their on-line marketing modes (e.g.,Web ads, emails, etc.). For example, a manufacturer (or an agent of themanufacturer) adds the link in the form of a branded service (e.g.,SaveMyCoupons) button within an advertisement window. Thus supporteddelivery modes include: e-mail, banner page ads, corporate websites,PDAs, and/or ads on digital TV.

A consumer subscribes to the electronic coupon system by filling out anelectronic subscription form. In response, the user receives a uniqueconsumer account ID. During step 910, when the consumer is presented alink embedded in an advertisement/offer presented via one of theaforementioned delivery modes, the consumer clicks on the link/button.Selecting the link initiates a request to the electronic coupon serviceservers to create an electronic coupon object (containing a uniquecoupon instance ID) associated with the consumer (consumer account ID)and selected link. A reference to the electronic coupon (depicted inFIG. 2 by an arrow from a. consumer instance to the electronic couponobject) is added to an appropriate consumer account object. Theelectronic coupon system also stores a reference to the newly createdelectronic coupon record in the account of an associated manufacturer(depicted in FIG. 2 by an arrow from a manufacturer instance to theelectronic coupon object).

Thereafter, the consumer goes to a retailer that subscribes to theelectronic coupon system and purchases a product that corresponds to theelectronic coupon object created during step 910. During the checkoutprocess, during step 92 the consumer provides an identification linkingthe consumer to an electronic coupon (Consumer) account containing theelectronic coupon generated during step 910. This can be done bypresenting the retail POS system with the retailer's loyalty programcard, an electronic coupon system ID card, a phone number, mobile phone,biometrics like fingerprints or iris images, Social Security AccountNumber, or any other identification method that was setup in theconsumer's account as a valid identification source.

During the checkout process, the retailer POS device accesses theconsumer's saved electronic coupon corresponding to a purchased product.In an exemplary embodiment the association between an electronic couponand a purchased product is achieved at any desired level ofparticularity. For example, in an exemplary embodiment one or more UPCcodes are associated with an electronic coupon to specify a particularproduct brand, name and size range to which the electronic couponcorresponds. During the redemption stage, one of the Retailer POSapplications 106 interacts with the electronic coupon system servers toacquire the relevant electronic coupon object information and execute atransaction registering the electronic coupon redemption event(identifying the UPC of the purchased product, the retailer, thedate/time, etc.).

In a particular embodiment, during step 930, after the consumer presentsan identification to the retail POS system, the POS system acquires acomplete listing of all electronic coupon objects associated with theidentified consumer account. The retail POS system validates theconsumer's purchases against the list of electronic coupons retrievedfrom the database server 120. During step 940 the electronic couponcreated during step 910 is matched to a product purchased by theconsumer, then a redemption event is triggered wherein the previouslyissued electronic coupon object is modified to include informationassociated with the redemption event including identification of thepurchased product (by UPC), the retailer POS, and the time ofredemption. The updated information is provided in the form of aredemption notification transaction to one of the Retail POS servers 110d to update the affected database object list entries (consumers,manufacturers, and retailers) as well as the electronic coupon object.

Thus, in response to the redemption notification, the electronic couponsystem marks the electronic coupon object as redeemed, timestamps theobject, and adds a reference to the redeemed electronic coupon in a listof redeemed electronic coupons associated with the retailer POS objectcorresponding to the place where the checkout event occurred. The systemalso records information about the retailer that redeemed the electroniccoupon and the tnμ1saction in the electronic coupon. The informationcreates an electronically auditable trail that supports invoicing themanufacturer for the electronic coupon on behalf of the retailer(Retailer ID, Store ID, Register ID, Date and Time of Redemption, andRedemption Value, Products Purchased, etc).

Having described the architecture and general operation (includingexemplary user interfaces) of an exemplary electronic coupons system,attention is directed to several particular operations/functionssupported by the above-described system summarized in a series offlowcharts and associated written description. The operations describedherein below exemplify the flexible/extensible nature and breadth ofsupportable features of the above-described system infrastructure andsupported base functionality.

Fraud Prevention

Fraud, by both consumers and retailers, substantially reduces the valueand viability of marketing products and services via coupons. Fraudassociated with the redemption of coupons is addressed, in an extensionof the basic functionality of the electronic coupon system, through realtime tracking and authentication of transactions involving electroniccoupons. The set of steps summarized in FIG. 13 and described hereinbelow, addresses fraud though the tracking and authentication ofelectronic coupons via real time monitoring of electronic coupontransactions.

Referring to FIG. 13, during step 1000, an Ad Campaign is defined undera particular Manufacturer (account) by an authenticated user (viastandard logon ID/password function). In the particular example, themanufacturer server 110 b authenticates a logged on user for aparticular manufacturer by comparing supplied credentials against one ormore values maintained in the “companies_id” field of a correspondingrecord in a Companies table (see, FIG, 4 a, Companies table record 300).Thereafter, the authenticated user defines an Ad Campaign structureincluding a definition for a particular electronic coupon (see, FIG. 4r, Ad Campaign table record 470), and the newly defined Ad Campaign isadded to the table of Ad Campaign records maintained by the databaseserver 120. The new Ad Campaign record, specifying a set of parametervalues defining a new electronic coupon/offer, is identified by a uniqueinteger value assigned to the “ad_campaign_id” field of the new record.

Thereafter, during step 1010, an electronic coupon instance (see, FIG. 4s, Coupons table record 480) is created for a particular authenticatedConsumer. In particular, during step 1010 a logged on Consumer (via oneof the consumer applications 100) having a unique consumer ID (see, FIG.4u , Consumers table record 500, consumers_id) selects a displayedelectronic coupon offer corresponding to the Ad Campaign (electroniccoupon) defined and saved during step 1000. In the illustrative example,the Ad Campaign is displayed on a website supported by Consumer servers110 a and the database servers 120. However, a wide variety of channelsare contemplated for the presentation of electronic coupon offersincluding via links to electronic coupon offers embedded onto virtuallyany type of Web page.

During step 1010, in response to the received request from theauthenticated Consumer, the consumer server 110 a validates a unique AdCampaign ID associated with the requested electronic coupon for theselected Ad Campaign. The server 110 a validates the consumer request'stime and date (to ensure the offer period has begun and has not expired)by reference to the web_activation_dateand web_deactivation_date fieldsof the selected Ad Campaign/electronic coupon. Upon validation, theconsumer server 110 a creates a unique electronic coupon record (see,FIG. 4s , Coupons table record 480) having a unique coupon id value (inregard to the particular Ad Campaign from which the electronic couponwas created). The electronic coupon specifies the unique consumer idvalue associated with the requesting authenticated consumer. The newelectronic coupon is deposited into a list of electronic couponsassociated with the Consumer's account (identified by a uniqueconsumer_id value).

It is noted that a single electronic coupon is potentially associatedwith multiple UPC codes. Therefore, in the exemplary embodiment, the AdCampaign record (and thus any coupon instance created from the AdCampaign record) includes a “product_group_id” field containing a value(e.g., an integer) referencing one or more records stored in aProduct-UPC Mappings table (see FIG. 4k ) that map the product group idvalue to one or more UPC values.

Thereafter, a user redeems the electronic coupon at a retailer POSoutlet. During step 1020, the retailer POS outlet initiates a couponredemption session with the POS server 110 d. During checkout at theretailer POS outlet, the POS server 110 d validates retailer POSidentification information against company, store, and POS outletrecords maintained by the database servers. The identificationinformation includes, by way of example, IDs corresponding to theretailer ID (see, companies_id of Companies table record 300), the storeID (see, stores_id of Stores table record 370), and the POS ID (see, POStable record 380, point_of sales _id). The supplied combination ofretailer ID, store ID and POS ID must be valid to constitute a validcombination to enable a coupon redemption transaction to occur.

During step 1030, the retailer POS server 110 d retrieves a set ofelectronic coupons associated with the user's Consumer accountassociated with a Consumer ID presented at the retailer POS (e.g., aloyalty card id, a phone number, etc.). The downloading is initiated assoon as possible after presentation of a Consumer ID at the retailer POSoutlet. In accordance with an illustrative embodiment, electroniccoupons are pre-filtered prior to downloading to a requesting retailerPOS by the server 110 d. In the particular instance of the electroniccoupon created during step 1010, the server 110 d verifies that theretailer POS site is within a region where the coupon is active bycomparing the zip code (see, region_id in the Stores table record 370)associated with the store containing the retailer POS to the ad campaignarea (see, campaign _area_id of Ad Campaign table record 470 whichin-turn references a Campaign-area mappings table record 450 which, inturn, references a Postal Codes table record 460). The retailer POSserver 110 d will not download any coupon where the current retailer POSis not located with an area (a set of zip codes) designated by theelectronic coupon. Any other appropriate electronic couponpre-screenings can occur as well based upon identification informationsupplied by the retailer POS application 106 for either/both thecurrently authenticated retailer POS or Consumer. More advancedpre-filtering algorithms can apply a throttle to the number or frequencyof electronic coupons a particular user redeems for a particular adcampaign (enforce a total or frequency limit). Thus, during step 1030the POS server 110 d operates as a pre-screening electronic couponfilter for electronic coupons contained in the list of electroniccoupons associated with the authenticated Consumer (account). Uponcompletion of step 1030 a set of filtered electronic coupons has beenprovided by the retailer POS server 110 d to the requesting one of theretailer POS applications 106.

Next, during step 1040, the retailer POS application that received theelectronic coupon list (during step 1030), applies the electronic couponlist to the purchases registered at the retailer POS outlet. Inaccordance with the exemplary embodiment, when the retailer POSregisters the purchase of a product (identified by a particular UPC),the retailer POS application compares the UPC to the set of UPCsassociated with the set of electronic. coupons downloaded during step1030, including one or more UPCs referenced by the electronic couponissued by the Consumer server 110 a to the Consumer during step 1010.

In the illustrative example, during step 1040 a match is detectedbetween a UPC for a purchased product and a UPC associated with theelectronic coupon issued to the Consumer during step 1010 (see,product_group_id in Ad Campaign record 470 and Product-UPC Mappingsrecord 400). In response to the identification of a match, the retailerPOS application captures/extracts a set of identification informationassociated with the transaction to create a unique electronic couponredemption transaction record (see, Coupons Table record 480) including:the coupons_id, consumer_id, retailer_id, purchased_product,redemption_value, consumer_id, point_of_sale_id, clerk_id,pos_transaction_id, date, and time stamp.

In accordance with an exemplary embodiment, the automaticstorage/tabling of a variety of identification and time stampinformation associated with issuance and redemption of electroniccoupons facilitates end-to-end monitoring of electronic coupons fromcreation to redemption. Thus, in an exemplary embodiment, afterredemption of the electronic coupon (issued during step 1010), a seriesof fraud detection/prevention steps are performed based upon a varietyof transactional data associated with the creation and redemption ofelectronic coupons. The fraud detection/prevention operations can befollowed by any of a variety of remedial steps including: refusing toapply the coupon, refusing to reimburse the retailer, de-authorizing theretailer, etc. In the exemplary embodiments described herein, a timeperiod is used to identify abnormal redemption patterns. In otherinstances, abnormal redemption patterns are based upon percentages oftotal products sold that are accompanied by a redeemed coupon.Furthermore, fraudulent behavior can be determined with greatercertainty by comparing a set of abnormal redemptions against theredemption patterns at other retail locations or even other POSpositions within a same store.

During step 1050 the system performs an “elapsed time” test wherein thetotal time from issuance to redemption of an electronic coupon iscompared to a statistically improbable time period to identifypotentially fraudulent activity. If the elapsed time is less than thestatistically improbable time period, then the transaction is flagged as(potentially) fraudulent. In a particular example, the elapsed time fora particular transaction is compared to a mean time for similarredemptions (e.g., a same product, a same store, a same class ofproducts, etc.). If the elapsed time differs by a statisticallysignificant amount (e.g., multiple standard deviations) from the meantime of similar redemptions, then the redemption transaction is flaggedas suspicious/fraudulent. For example, if the issuance/redemptiontransaction series time span was too short, (e.g., 5 minutes when thenext closest time period is a half hour), then the issuance/redemptiontransaction series is identified as suspicious (likely fraudulent). FIG.14 depicts an exemplary Ad Campaign management user interface providing,among other things, a set of Ad Campaign statistics (e.g., mean, median,and mode) to which issuance-to-redemption times of particular instancesare compared.

During step 1060 the system performs a statistical test on a retailer'stotal redemptions (over a period of time) test. The number of redemptionis identified as abnormal in a variety of ways. For example, if aRetailer has an abnormally high number of redemptions over a period oftime (compared to the Mean of all other Retailers), then automated frauddetection processes flag the retailer for potential fraud. A high numberof redemptions is determined, in a particular example, by the percentageof sales for which a coupon was used. FIG. 15 depicts an exemplary AdCampaign management user interface providing, among other things, a setof Ad Campaign statistics identifying percentage of total issued couponsand percentage of total redeemed coupons.

During step 1070 the system performs a statistical test to detectinstances where a particular Consumer has an abnormally high number ofredemptions over a period of time (compared to the Mean of all otherConsumers). The system automatically detects and then flags abnormallyhigh coupon redemptions attributed to a Consumer. To counter a usercreating multiple consumer accounts to reduce the apparent number ofredemptions under a single user, a group of Consumers is potentiallyaggregated based upon a same mail/email address provided by differentConsumers.

Real Time Automatic Campaign Budget Management

Another added functionality facilitated by the electronic couponmanagement infrastructure described herein above involves real timemanagement of an Ad Campaign. Referring to FIG. 16, during step 1100 anAd Campaign is created. As explained herein above with reference to FIG.4s , the Ad Campaign table record 470 supports designating an AdCampaign budget and an assumed redemption value for the electroniccoupon. The budget for an ad campaign is entered as a dollar amount intothe system or, alternatively, a number that will limit the total numberof coupons issued. FIG. 17 depicts an exemplary Ad Campaign editorinterface allowing the fields of the Ad Campaign to be entered—includingthe number of coupons (e.g., 1630) or total value redeemed (e.g.,$3,000).

Thereafter, during step 1110 the defined Ad Campaign is activatedthereby making the electronic coupon offer available for issuance toConsumers.

During step 1120 an electronic coupon is requested by a Consumer. Inresponse, during step 1130, a responsible one of the consumer servers110 a checks the forced_web_inactivefield (see, FIG. 4s ) of the AdCampaign record for the requested electronic coupon to determine whetherthe corresponding Ad Campaign is active or inactive (by reference to aforced_web_inactive field). If the Ad Campaign is inactive, then controlpasses to step 1140 wherein the responsive consumer server returns amessage to the Consumer indicating that the coupon is no longeravailable. If, however, the Ad Campaign is active Web Active, thencontrol passes to step 1150 wherein the consumer server issues, to therequesting Consumer, an electronic coupon corresponding to the AdCampaign. Also, during step 1150 the consumer server updates (in realtime) the total number of issued electronic coupons and the collectivevalue of the issued electronic coupons for the Ad Campaign.

After updating the total number and cumulative value of issued coupons,control passes to step 1160. During step 1160, if the number ofoutstanding coupons is equal to, or greater than, the Ad Campaign'sbudget, then the Ad Campaign status is set to inactive via theforced_web_inactive field of the Ad Campaign record. This preventsfurther presentation of the Ad Campaign via an Offers page on theConsumers applications 100.

It is also noted that at any time after the ad campaign is created, thetotal number and cumulative value of issued electronic coupons isavailable immediately to the Manufacture via, for example, an adcampaign interface (see, FIG. 14—campaign budget information) supportedby the manufacturer servers 110 b. The Ad campaign interface providesbudget information for the Ad Campaign including, among other things,the number of currently issued electronic coupons (and their cumulativevalue) under the particular Ad Campaign.

Near Real Time Departmental Budget Monitoring and Control

Another functionality supported by the system described herein relatesto monitoring and control of budgets on a near real-time basis. Turningto FIG. 18, during step 1200 a department record is created under aparticular manufacture account (Manufacturer). Thereafter, an adcampaign budget is designated for the department. An example of an adcampaigns summary user interface for the Manufacturers applications 102is presented in the screen shot provided in FIG. 19. Furthermore, thesystem supports designating one or more sub-departments within adepartment wherein each sub-department is assigned a budget. Thedepartment and sub-department budgets are used to calculate aManufacturer's total budget. The Manufacturer's total budget iscalculated by the system (e.g., the Manufacture servers 110 b) by addingall of the departments and sub-departments together.

The during step 1210, in response to a user request, assuming the adcampaign is active, the requested electronic coupon is issued to aConsumer.

During step 1220 the responsive one of the manufacturer servers 110 bupdates all the budget fields associated with the issued electroniccoupon. Thus, in addition to updating the ad campaign relatedinformation (described herein above with reference to real time adcampaign budget management procedures), the accumulated value of issuedcoupons for a department of the Manufacturer with which the issued.coupon is associated. is updated based. upon the value of the coupon andany fees associated with the coupon. With reference to FIG. 19 thebudget, number of coupons issued, and the percent of budget for issuedcoupons is calculated and displayed, for the department (orsub-department).

During step 1230, in response to redemption, via one of the retailer POSapplications 106, of the electronic coupon issued during step 1210, thepreviously issued electronic coupon's status is changed to “redeemed”.

During step 1240, the redemption value of the coupon plus any feesassociated with the coupon are calculated (in real time) and added tothe value of coupons “redeemed” in the redeemed electronic coupon'sdesignated department (or sub-department) for the identifiedManufacturer. The budget, number of coupons used, and the percent ofbudget for used coupons is calculated and displayed, for the identifieddepartment (see, e.g., FIG. 19, “All Ad Campaigns Summary”) and/orsub-department.

During step 1250, the value of “outstanding” (issued, unexpired but notyet redeemed by a Retailer POS Register) coupons are calculated. Expiredelectronic coupons are periodically identified and processed to renderthe “outstanding” value for an electronic coupon. The value ofoutstanding coupons is applied to the Manufacturer's department budgetand/or the Manufacturer's total budget to render “percent of budget”calculations for each department. The calculated percentages aredisplayed to a user via the Manufacture applications 102 (see FIG. 19,“All Ad Campaigns Summary”), Due to the periodic processing of expiredelectronic coupons, the “outstanding” value is considered to be “nearreal time.”

During step 1260, an ad campaign is selectively deactivated via theManufacturer applications 102 to halt issuance (but not redemption) ofpreviously issued electronic coupons. In the exemplary embodiment, auser deactivates a particular ad campaign via the “actions” column ofthe All Ad Campaigns user interface (see, FIG. 19, “Actions” column and“Deactivate” link). This action has the effect of setting thecorresponding Ad Campaign “inactive” (see, FIG. 4r ,forced_web_inactive) to prevent/limit departmental budget overruns bypreventing further issuance of electronic coupons under the Ad Campaign.

Controlling Liability Associated with Ad Campaign (Definition) Errors

In addition to enhanced control over budgets, the disclosed electroniccoupon infrastructure facilitates controlling liability arising fromcoupon definition errors through nearly instantaneous access/controlover the active/inactive status of a previously defined Ad Campaign viathe aforementioned “Deactivate” link on the Ad Campaign user interfacedepicted in FIG. 19. Setting the status of an Ad Campaign to “inactive”immediately stops the issuance of additional electronic couponsassociated with the inactivated Ad Campaign.

Manufacturer and Retailer Deposit Coupons to Drive Purchase Behavior

Turning to FIG. 20, yet another functionality supported by the systeminfrastructure described herein is the ability to define and executefocused marketing campaigns based upon Consumer demographics andprevious and/or current coupon selection activities and couponredemption activities. During step 1300, an ad campaign (electroniccoupon template) is defined (see, FIG. 4r ). During step 1310, ratherthan publish an offer generally available to all Consumers, a selectivedistribution criterion is defined based upon user profile information(e.g., distribution is limited to a specified ZIP code). Thereafter,during step 1320 the selective distribution criterion is implemented. Ina first embodiment, an electronic coupon is automatically added to eachconsumer account meeting the criterion. In other embodiments, thelimitation is used to define the coupon offers displayed for particularConsumers via the Consumer applications 100. Another embodimentincorporates additional/supplemental marketing activities within theConsumers account based on actions taken with a selected but notredeemed coupon such as offering to increase the value of a specificcoupon if the Consumer watches an advertisement for the product featuredin the specific coupon. In yet another embodiment, an email messagedescribing the electronic coupon offer (product, value, etc.) is sent tospecified email addresses corresponding to Consumers that meet thequalifying criterion. The email includes a link to a web page maintainedby the consumer servers 110 a for displaying the electronic coupon offerfor acceptance by the notified parties. This proactive coupondistribution feature provides a marketing tool to actively induceconsumers to evaluate or purchase the Manufacturer's products.

Calculate Brand Elasticity and Optimization by Region

The system described herein also facilitates automated calculation ofvalues indicative of the success of particular Ad Campaigns on aregionalized basis. An exemplary user interface for reporting suchresults is provided in FIG. 21. In addition to providing collectivevalues and averages, values in the table can be further processed torender additional information. For example, a “take rate” (thepercentage of electronic coupons issued as a percentage of totalConsumers exposed to the offer for an ad campaign) or redemption rate(percentage of issued coupons that are redeemed) is calculated on a ZIPcode basis. The regionalized statistical numbers are then compared tothe Total number of Coupons Issued by the system for that Ad Campaign(See Screen Shot 1: Ad Campaign Budget Information—Issued). Thecalculation on a particular region is used by the Manufacturer todetermine the highest percent of coupons requested and redeemed by aregion (e.g., a particular ZIP code) for an Ad Campaign.

In a particular embodiment, regional take/redemption rates are analyzed,with respect to the face value of the coupons to determine if increasingthe face value of the coupons significantly increases the take rate, orredemption rate of that coupon for the associated product. Thesestatistics allow the Manufacturer to calculate the optimal face valueper Ad Campaign, by region, in order to increase the redemption rate(sales of products) with the smallest discount rate (coupons face value)in order to maximize profits. For Example: a $0.50 coupon on a specificproduct might create the same amount of sales in a rural region (e.g.,Bald Knob Arkansas), as a $1.00 coupon on the same product would in amajor metropolitan area (like New York, N.Y.). Differentiating betweenoffers according to past redemption statistics potentially increases netprofit because the discount provided by the coupons can be substantiallylower in particular regions. In addition to region, the system providesthe ability for to optimize coupon usage based on a variety ofdifferentiating factors exposed through statistical analysis of past AdCampaign results including: time to redeem and profitability.

Real Time Incentive Distribution Measurement and Channel Effectiveness

The system disclosed herein supports presentation of electronic couponoffers via a variety of distribution channels. In addition to a generalWeb site dedicated to presentation of electronic coupon offers,embodiments of the present invention support focused offers embedded onvirtually any Web page/site. Therefore, yet another value-addedfunctionality supported by the disclosed electronic coupon systemrelates to the determination, in real time, of channel effectiveness. Inaccordance with an illustrative example, the system receives anidentifier for a site/Web page from which a Consumer has requested anelectronic coupon also referred to as a coupon distribution channel. Thelocation is maintained in a location_id field of the issued electroniccoupon record for a Consumer. The distribution channel information iscalculated along with the number of Coupons issued, number of CouponsRedeemed, Zip Code for Consumer, Location where the coupons was redeemed(Retailer), and mean time for redemption. This real time analysis of theinformation collected allows a system manager, manufacturer, or retailerto:

-   determine which distribution channel is more effective based on the    total number of coupons Requested/Issued-   determine which distribution channel is more effective (best rate on    return) based on the total number of Coupons Redeemed-   determine which distribution channel is more effective based on the    total number of coupons Requested/Issued for a Region (Consumer's    Zip Code)-   determine which distribution channel is more effective based on the    total number of Coupons Redeemed by Region (Consumer's Zip Code)-   determine which distribution channel is more effective for a    Retailer, based on the total number of Coupons Redeemed by the    Retailer-   determine which distribution channel is the most effective (fastest)    at turning products by tracking the mean time of redemption.

An important facilitator of each of the above determinations is theidentification of a channel through which each electronic coupon issues.

The structures, techniques, and benefits discussed above are merelyexemplary embodiments of the invention. In view of the many possibleembodiments to which the principles of this invention may be applied, itshould be recognized that the embodiments described herein with respectto the drawing figures are meant to be illustrative only and should notbe taken as limiting the scope of invention. For example, those of skillin the art will recognize that some elements of the illustratedembodiments shown in software may be implemented in hardware and viceversa or that the illustrated embodiments can be modified in arrangementand detail without departing from the spirit of the invention. Moreover,those of skill in the art will recognize that the disclosed principlesare not limited to any particular local area network protocols and/ortopologies. Therefore, the invention as described herein contemplatesall such embodiments as may come within the scope of the followingclaims and equivalents thereof.

In examples of the method to create traceable unique electronic couponidentifications in electronic promotional transactions to preventundesired or multiple uses of offers, the electronic coupon comprises ahypertext link presented to the consumer computing device to enable theconsumer to selectively activate the hypertext link and thereby activatethe electronic coupon. In another example, the electronic couponcomprises an embedded button presented to the consumer computing deviceand which enables the consumer to selectively activate the electroniccoupon. In another example, the electronic coupon comprises a graphicalrepresentation of the electronic coupon presented to the consumercomputing device which enables the consumer to selectively activate theelectronic coupon. In another example, the electronic coupon is createdby a manufacturer associated with a product associated with theelectronic coupon. In another example, the method further comprisesgenerating, using one or more computing devices, an invoice from theretailer to the manufacturer. In another example, the electronic couponcomprises data specifying electronic coupon parameters for redemptionand validation. In another example, the method further comprisesvalidating, using one or more computing devices, a redemption request toapply the electronic coupon to the financial transaction based on theelectronic coupon parameters for redemption and validation. In anotherexample, the request to associate an electronic coupon with a consumeraccount is received via a web page associated with the processor. Inanother example, a smallest effective discount rate for the electroniccoupon that is associated with the consumer account is associated withthe electronic coupon based on an analysis of redemption ratesassociated with the electronic coupon.

In the computer program product to create traceable unique electroniccoupon identifications in electronic promotional transactions to preventundesired or multiple uses of offers, the program further comprisescomputer-executable program instructions to receive a request from aconsumer computing device associated with a consumer to associate anelectronic coupon with a consumer account and to identify a uniqueconsumer identification associated with the consumer account based onstored identification criteria. In another example, a smallest effectivediscount rate for the electronic coupon that is associated with theconsumer account is associated with the electronic coupon based on ananalysis of redemption rates associated with the electronic coupon. Inanother example, the electronic coupon comprises a hypertext linkpresented to the consumer computing device to enable the consumer toselectively activate the hypertext link and thereby activate theelectronic coupon. In another example, the electronic coupon comprisesan embedded button presented to the consumer computing device and whichenables the consumer to selectively activate the electronic coupon. Inanother example, the electronic coupon comprises a graphicalrepresentation of the electronic coupon presented to the consumercomputing device which enables the consumer to selectively activate theelectronic coupon. In another example, the electronic coupon is createdby a manufacturer associated with a product associated with theelectronic coupon. In another example, the program further comprisescomputer-executable program instructions to generate an invoice from theretailer to the manufacturer. In another example, the program furthercomprises computer-executable program instructions to generate aninvoice from the retailer to the manufacturer. In another example, theelectronic coupon comprises data specifying electronic coupon parametersfor redemption and validation. In another example, the processor furthercomprises computer-executable program instructions to validate aredemption request to apply the electronic coupon to the financialtransaction based on the electronic coupon parameters for redemption andvalidation. In another example, the unique consumer identification isassociated with a frequent shopper card. In another example, the requestto associate an electronic coupon with a consumer account is receivedvia a web page associated with the processor. In another example, theprocessor further comprises computer-executable program instructions toprovide funds to the retailer to redeem the electronic coupon.

1. (canceled)
 2. A system to create traceable unique electronic couponidentifications in electronic promotional transactions to preventundesired or multiple uses of offers, comprising: a storage device; anetwork device; and a processor communicatively coupled to the storagedevice and the network device, wherein the processor executesapplication code instructions that are stored in the storage device tocause the system to: receive a request from a consumer computing deviceassociated with a consumer to associate an electronic coupon with anaccount of the consumer; identify a unique consumer identificationassociated with the consumer account; create a unique electronic couponidentification associated with the electronic coupon; at a time beforean initiation of a financial transaction to be conducted by the consumeraccount at a point of sale computing device, associate the uniqueelectronic coupon identification only with the unique consumeridentification associated with the consumer account and store the uniqueelectronic coupon identification in the consumer account; decline theassociation of the electronic coupon with the unique consumeridentification associated with the consumer account when a maximumfinancial exposure value has been reached by a promotion associated withthe electronic coupon; receive, from a point of sale computing deviceassociated with a retailer, a notification of an initiation of atransaction being conducted by the consumer account at the point of saleterminal, the notification comprising data to identify the uniqueconsumer identification; and in response to receiving the notificationof the initiation of the transaction: identify the unique consumeridentification based on the notification; and identify the uniqueelectronic coupon identification based on the associated unique consumeridentification.
 3. The system of claim 1, wherein the processor furtherexecutes application code instructions to cause the system tocommunicate the unique electronic coupon identification to the consumercomputing device.
 4. The system of claim 2, wherein the electroniccoupon comprises a hypertext link presented to the consumer computingdevice to enable the consumer to selectively activate the hypertext linkand thereby activate the electronic coupon.
 5. The system of claim 2,wherein the electronic coupon comprises an embedded button presented tothe consumer computing device and which enables the consumer toselectively activate the electronic coupon.
 6. The system of claim 1,wherein the electronic coupon comprises a graphical representation ofthe electronic coupon presented to the consumer computing device whichenables the consumer to selectively activate the electronic coupon. 7.The system of claim 1, wherein the electronic coupon is created by amanufacturer associated with a product associated with the electroniccoupon.
 8. The system of claim 1, wherein the electronic couponcomprises data specifying electronic coupon parameters for redemptionand validation.
 9. The system of claim 7, wherein the processor furtherexecutes application code instructions to cause the system to validate aredemption request to apply the electronic coupon to the financialtransaction based on the electronic coupon parameters for redemption andvalidation.
 10. The system method of claim 1, wherein the uniqueconsumer identification is associated with a frequent shopper card. 11.The system of claim 1, wherein the request to associate an electroniccoupon with a consumer account is received via a web page associatedwith the processor.
 12. The system of claim 1, wherein a smallesteffective discount rate for the electronic coupon that is associatedwith the consumer account is associated with the electronic coupon basedon an analysis of redemption rates associated with the electroniccoupon.
 13. The system of claim 1, wherein the processor furtherexecutes application code instructions to cause the system tocommunicate the electronic coupon having the unique electronic couponidentification to the point of sale computing device for redemption inconnection with the transaction.
 14. The system of claim 6, wherein theprocessor further executes application code instructions to generate aninvoice from the retailer to the manufacturer.
 15. Acomputer-implemented method to enable electronic promotionaltransactions in real time, comprising: receiving, using one or morecomputing devices, a request from a consumer computing device associatedwith a consumer to associate an electronic coupon with a consumeraccount; creating, using the one or more computing devices, a uniqueelectronic coupon identification associated with the electronic coupon;associating, using the one or more computing devices, the uniqueelectronic coupon identification only with a unique consumeridentification associated with the consumer account; declining, usingthe one or more computing devices, the association of the electroniccoupon with the unique consumer identification associated with theconsumer account when a maximum financial exposure value has beenreached by a promotion associated with the electronic coupon; receiving,using the one or more computing devices and from a point of salecomputing device associated with a retailer, a notification of aninitiation of a financial transaction between the consumer account and apoint of sale terminal, the notification comprising data to identify theunique consumer identification; identifying, using the one or morecomputing devices, the unique consumer identification based on thenotification; identifying, using the one or more computing devices, theunique electronic coupon identification based on the unique consumeridentification; and providing, using the one or more computing devices,funds to the retailer to redeem the electron coupon.
 16. Thecomputer-implemented method of claim 15, further comprisingcommunicating, using the one or more computing devices, the uniqueelectronic coupon identification and data associated with the electroniccoupon to the consumer computing device.
 17. The computer-implementedmethod of claim 15, further comprising identifying, using the one ormore computing devices, a unique consumer identification associated withthe consumer account based on stored identification criteria.
 18. Acomputer program product, comprising: a non-transitory computer-readablestorage device having computer-executable program instructions embodiedthereon that when executed by a computer cause the computer to enableelectronic promotional transactions in real time, thecomputer-executable program instructions comprising: computer-executableprogram instructions to create a unique electronic coupon identificationassociated with the electronic coupon; computer-executable programinstructions to associate the unique electronic coupon identificationwith a consumer account; computer-executable program instructions toassociate the unique electronic coupon identification only with a uniqueconsumer identification associated with the consumer account;computer-executable program instructions to decline the association ofthe electronic coupon with the unique consumer identification associatedwith the consumer account when a maximum financial exposure value hasbeen reached by a promotion associated with the electronic couponcomputer-executable program instructions to receive, from a point ofsale computing device associated with a retailer, a notification of aninitiation of a financial transaction between the consumer computingdevice and a point of sale terminal, the notification comprising data toidentify the unique consumer identification; computer-executable programinstructions to identify the unique consumer identification based on thenotification; and computer-executable program instructions tocommunicate the electronic coupon having the unique electronic couponidentification to the point of sale computing device for associationwith the financial transaction.
 19. The computer program product ofclaim 18, further comprising: computer-executable program instructionsto receive a request from a consumer computing device associated with aconsumer to associate an electronic coupon with a consumer account;computer-executable program instructions to identify a unique consumeridentification associated with the consumer account based on storedidentification criteria.
 20. The computer program product of claim 18,wherein a smallest effective discount rate for the electronic couponthat is associated with the consumer account is associated with theelectronic coupon based on an analysis of redemption rates associatedwith the electronic coupon.
 21. The computer program product of claim18, further comprising computer-executable program instructions tocommunicate the unique electronic coupon identification to the consumercomputing device.